我有 Pandas 系列,我们称之为 approved_fields,我想用它来过滤 df:
approved_field(['Field1','Field2','Field3')]
df
Field
0 Field1
1 Field4
2 Field2
3 Field5
4 Field2
应用 approved_field 过滤器后,生成的 df 应如下所示:
Field
0 Field1
1 Field2
2 Field2
谢谢!
最佳答案
您可以使用 isin
和 bool 索引:
>>> import pandas as pd
>>> df = pd.DataFrame({"Field": "Field1 Field4 Field2 Field5 Field2".split()})
>>> approved_fields = "Field1", "Field2", "Field3"
>>> df['Field'].isin(approved_fields)
0 True
1 False
2 True
3 False
4 True
Name: Field, dtype: bool
>>> df[df['Field'].isin(approved_fields)]
Field
0 Field1
2 Field2
4 Field2
关于python - 用另一个系列过滤 Pandas 数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17046823/