【发布时间】:2020-05-09 18:59:26
【问题描述】:
您好,我有一个包含多列的 excel 数据,我需要对特定单词进行罚款并将其返回到新列中 表格如下所示:
ID col0 col1 col2 col3 col4 col5
1 jack a/h t/m w/n y/h 56
2 sam z/n b/w null null 93
3 john b/i y/d p/d null 33
我想在 col1、col2、col3 和 col4 列中查找“b”并创建一个名为“b”的新列,其中返回单元格值的值
结果应该是这样的
ID col0 col1 col2 col3 col4 col5 b
1 jack a/h t/m w/n y/h 56 -
2 sam z/n b/w null null 93 b/w
3 john b/i y/d p/d null 33 b/i
我需要一种有效的方法来做到这一点我尝试在这样的地方使用
df1 = df[['col1', 'col2', 'col3', 'col4']]
df1['b']==[x for x in df1.values[0] if any(b for b in lst if b in str(x))]
我从这个答案https://stackoverflow.com/a/50250103/3105140得到这个
但它对我不起作用,因为我有空值和条件不起作用的行
【问题讨论】:
标签: python excel string pandas if-statement