我尝试做的是多条件平均值。这意味着我有一个x变量列表(长度相同),我想计算一个变量的平均值,这些变量的条件是其他变量的值/范围。
我尝试的代码是:
wb=pd.ExcelFile('file.xlsx')
wb.sheet_names
df=wb.parse('Sheet1')
df[:]
Var1=df['Col1_Name']
Var2=df['Col2_Name']
Var3=df['Col3_Name']
Var4=df['Col4_Name']
Var5=df['Col5_Name']
Var6=df['Col6_Name']
if (Var1 == 0).any() and (Var2 == 0).any() and (Var3 < 0.8).any() and (Var6 == 0).any():
print sum(Var4)/len(Var4)
似乎没问题,但是,如果我改变条件,结果总是一样的。此外,我试图在Excel上计算相同的双重检查,结果确实不同.. 你可以帮帮我吗?谢谢:))
答案 0 :(得分:3)
你所写的内容似乎有种各样的错误。我相信你想要的是:
(Var1 == 0).all() and (Var2 == 0) and (Var3 >= 0).all() and (Var3 < 1).all() and (Var6 == 0).all()