Mar*_*ars 4 python filtering pandas
我的问题是在这个链接中回答得很好的问题的扩展:
我在下面发布了答案,当字符串包含单词"ball"时,字符串被过滤掉:
In [3]: df[df['ids'].str.contains("ball")]
Out[3]:
ids vals
0 aball 1
1 bball 2
3 fball 4
Run Code Online (Sandbox Code Playgroud)
现在我的问题是:如果我的数据中有长句,我想识别带有"ball"和"field"字样的字符串怎么办?因此当它们中只有一个出现时,它会丢弃包含单词"ball"或"field"的数据,但保留字符串中包含两个单词的数据.
df[df['ids'].str.contains("ball")]
Run Code Online (Sandbox Code Playgroud)
会成为:
df[df['ids'].str.contains("ball") & df['ids'].str.contains("field")]
Run Code Online (Sandbox Code Playgroud)
如果你是更整洁的代码:
contains_balls = df['ids'].str.contains("ball")
contains_fields = df['ids'].str.contains("field")
filtered_df = df[contains_balls & contains_fields]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1280 次 |
| 最近记录: |