现在有一个dataframe,需要根据A,B,C列计算出DEF列,列是通过运算得到的结果
如1&-1得到的值是1
我需要1&-1或-1&1得到的值是0
求助各位
import pandas as pd
data = [
[1, 0, 0],
[1, 1, 1],
[1, 0, 1],
[1, 1, 0],
[0, 1, 0]
]
df = pd.DataFrame(data, columns=['A', 'B', 'C'])
df['D'] = df['A'] & (df['B'] - df['C'])
df['E'] = (df['A'] & df['B']) - df['C']
df['F'] = df['A'] & df['B'] - df['C']
print df
我不确定 你的问题是否一定要求运算符重载
如果不是 可以用其他方式解决这个问题
& 代表如果有两个数中有一个是0 则返回0, 否则返回1
现在新的要求是 如果1,-1 也要返回0
x&y 在(0,_),(_,0),(1,-1),(-1,1)的情况下返回0,其他返回1
这是我的想法,如果问题哪里理解有误,请指出