加速适用于逻辑表达式

时间:2017-08-23 14:24:50

标签: python pandas apply

我的数据框有20K行,表达式类似于

df[‘res’] = df[vnames].apply(lambda q: ((q == 1) | (q == 12)).any(), axis=1)

它有效,但需要相当长的时间 有没有更有效的方法来运行它?

1 个答案:

答案 0 :(得分:2)

选项1

v = df[vnames].values
df['res'] = ((v == 1) | (v == 12)).any(1)