有没有一种方法可以减少在数据帧中循环的条件

时间:2020-02-08 02:12:22

标签: python pandas loops dataframe

我希望能够减少一行代码,使其可以处理动态列表长度

signals = ['a', 'b', 'c']

num = df[(df[signals[x]] == True for x in len(signals))].shape[0]

num = df[(df['a'] == True) & (df['b'] == True) & (df['c'] == True)].shape[0]

num的第二个定义有效,但是我希望能够以与第一个定义类似的方式实现它。这是因为我的信号列表的长度不同,因此条件的数量发生了变化,无法对其进行硬编码。

1 个答案:

答案 0 :(得分:3)

看起来您正在寻找全部正确的行

df[df.all(1)]

df[df[signals].all(1)]