python - 如何根据外部列表中的值过滤熊猫数据框?
问题描述
我有以下数据框。我想将 column 中的每个逗号分隔值与中的值进行比较,如果列中存在任何a
值,则values
返回。希望你理解这个场景。谢谢!True
a
import pandas as pd
values = ['value 1', 'value 2']
df = pd.DataFrame({'a': ['value 1', 'value 1, value 2', 'value 1, value 3', 'value 3', 'value 4', 'value 5']})
a
0 value 1
1 value 1, value 2
2 value 1, value 3
3 value 3
4 value 4
5 value 5
我期待这将被退回:
a
0 True
1 True
2 True
3 False
4 False
5 False
解决方案
让我们split
尝试any
df['b']=df.a.str.split(', ',expand=True).isin(values ).any(1)
df
Out[168]:
a b
0 value 1 True
1 value 1, value 2 True
2 value 1, value 3 True
3 value 3 False
4 value 4 False
5 value 5 False
推荐阅读
- mongoose - Mongoose 中 GeoJSON 的默认值
- oracle - 使用输出参数执行存储过程时出现 Oracle OCI 错误
- python - TF.Keras 中具有多输出模型的单损失
- ios - 如何在 SwiftUI 中结束 UIViewRepresentable 的编辑?
- flutter - 如何在颤动中发出可忽略的警报?
- angular - 如果条件在带有节点后端的角度上无法正常工作(MEAN Stack)
- sql - ssis - 我必须手动运行每个任务
- java - 尝试使用 BufferedInputStream 和 Base64 对 Java 中的大文件进行编码
- scheme - 如何在这里反转谓词?
- c++ - C ++如何将十六进制字符串附加到字节数组?