我在翻译熊猫的excel公式。其中具有指定条件的列按行计数和求和。如果一个单元格 从满足给定条件的选定列中,然后添加满足条件的计数。你知道吗
我有数据帧:
测向:
a b c
14 x1 2
17 x2 2
0 x,1 3
1 x1 1
Excel公式:
= COUNTIFS($U2,14,$X2,"x2",$W2,2)+COUNTIFS($U2,17,$X2,"x2",$W2,2)+COUNTIFS(U2,14,$X2,"x1",$W2,2)
熊猫配方:
df['counted'] = (df[(df['a']==14) & (df['b']=='x2') & (df['c']==2)].count(axis=1)) + (df[(df['a']==17) & (df['b']=='x2') & (df['c']==2)].count(axis=1)) + (df[(df['a']==14) & (df['b']=='x1') & (df['c']==2)].count(axis=1))
我从熊猫公式中得到以下结果: 测向:
a b c counted
14 x1 2 NaN
17 x2 2 NaN
0 x,1 3 NaN
1 x1 1 NaN
预期结果如下所示。任何帮助得到正确的公式将非常感谢。你知道吗
预期结果df:
a b c counted
14 x1 2 0
17 x2 2 1
0 x,1 3 0
1 x1 1 0
我认为您需要
sum
布尔掩码转换为整数:也可能出现链条件,以避免重复以获得更好的性能:
或按位
OR
链掩码,然后转换为整数:相关问题 更多 >
编程相关推荐