我有一个带有非标准列的数据框(一直到下一个相同的信息)。我想搜索可能不在行的某些列中出现的特定短语,然后返回后续单元格的值。例如:
A B C
How many? 5 Blah blah
Blah How many? 7
How many? 13 Blah
Blah Blah Blah
我正试图弄清楚如何搜索短语“多少?”然后在下一个单元格(5/7/13 / null)中返回值
答案 0 :(得分:2)
使用布尔值和shift
df[df.eq('How many?').shift(1,axis=1).fillna(False)]
Out[142]:
A B C
0 NaN 5 NaN
1 NaN NaN 7
2 NaN 13 NaN
3 NaN NaN NaN
更新
s1=df.eq('How many?').shift(1,axis=1).fillna(False)
s2=df.eq('How many?')
df[s1|s2]
Out[154]:
A B C
0 How many? 5 NaN
1 NaN How many? 7
2 How many? 13 NaN
3 NaN NaN NaN
答案 1 :(得分:1)
使用Root pom
数组来简化索引编制:
numpy