我的输入数据框是:
list_of_dicts1 = {"Filter":["abc",'def']}
test1 = pd.DataFrame(list_of_dicts1)
list_of_dicts2 = {"C":["a",'z']}
test2 = pd.DataFrame(list_of_dicts2)
所需的输出为
list_of_dicts3 = {"Filter":['abc']}
test3 = pd.DataFrame(list_of_dicts3)
如何使用熊猫基于test2数据框的“ C”列过滤数据框test1
使用Series.str.contains
与join
通过|
对正则表达式or
:
df = test1[test1['Filter'].str.contains('|'.join(test2['C']))]
print (df)
Filter
0 abc
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句