我有一个如下所示的数据框。
text country language
-----------------------------------
football US Eng
baseball JP Jpn
swimming UK Eng
running FR Fra
rugby NZ Eng
Hockey NL Dut
在python中,我想在“text”列中提取包含字符串“ball”和“ing”的行,并使用如下所示的行创建一个新的数据框。
text country language
-----------------------------------
football US Eng
baseball JP Jpn
swimming UK Eng
running FR Fra
最佳答案
使用 Pandas ,您可以 slice using multiple conditions ,只需注意语法上的棘手括号。
df = pd.DataFrame({'A': ['foo', 'bar', 'fooing', 'barball'],
'B': [1, 2, 3, 4]})
df_slice = df[(df.A.str.contains('ing')) | (df.A.str.contains('ball'))]
那应该产生
df_slice
A B
fooing 3
barball 4
如果您的目标是分割以
ing
或 ball
结尾的单词,请在条件中使用 endswith()
而不是 contains()
。希望能帮助到你!关于python - 如何在特定条件下从现有数据帧创建新数据帧 - python,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47393746/