多条件平均python

多条件平均python,python,pandas,Python,Pandas,我要做的是多重条件平均。这意味着我有一个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'

我要做的是多重条件平均。这意味着我有一个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)
wb=pd.ExcelFile('file.xlsx')
wb.sheet_名称
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()和(Var2==0).any()和(Var3<0.8).any()和(Var6==0).any():
打印总和(Var4)/长度(Var4)
看起来还可以,但是,如果我改变条件,结果总是一样的。此外,我试图在Excel上计算相同的值作为双重检查,结果确实不同。。
你能帮我吗?谢谢:)

你写的东西似乎有点错。我相信你想要的是:

(Var1 == 0).all() and (Var2 == 0) and (Var3 >= 0).all() and (Var3 < 1).all() and (Var6 == 0).all()
(Var1==0).all()和(Var2==0)和(Var3>=0).all()和(Var3<1).all()和(Var6==0).all()

它可能没有打印任何内容,因为不符合条件。检查条件。输入文件的示例可能会有所帮助,但根据文档使用的不是
.all()
。多读点书。。。看看:all(iterable):如果iterable的所有元素都为True(或者iterable为空),则返回True
Var1.all()==0
,(with
()
)不检查列中的每个单元格是否都不为null,它将检查列Var1中是否有一个单元格不可编辑
var.all
甚至不是Python。