繁体   English   中英

遍历列 pandas dataframe 并根据条件创建另一列

[英]iterate through columns pandas dataframe and create another column based on a condition

我有一个 dataframe df

ID  ID2 escto1 escto2   escto3
1   A   1   0   0
2   B   0   1   0
3   C   0   0   3
4   D   0   2   0

所以要么使用索引要么使用通配符

like column name 'escto*'
if df.iloc[:, 2:]>0 then df.helper=1

或者

df.loc[(df.iloc[:, 3:]>0,'Transfer')]=1

这样 output 就变成了

ID  ID2 escto1  escto2  escto3  helper
1   A   1   0   0   1
2   B   0   1   0   1
3   C   0   0   3   1
4   D   0   2   0   1

Output

一种选择是使用 boolean output:

df.assign(helper = df.filter(like='escto').gt(0).any(1).astype(int))

   ID ID2  escto1  escto2  escto3  helper
0   1   A       1       0       0       1
1   2   B       0       1       0       1
2   3   C       0       0       3       1
3   4   D       0       2       0       1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM