在python中的另一个数据帧中查找数据帧的值

时间:2016-11-20 11:48:42

标签: python pandas

我有两个数据框df_1包含:

["TP","MP"]

和df_2包含:

["This is case 12389TP12098","12378MP899" is now resolved","12356DCT is pending"]

我想在df_1中使用值,在df_2的每个条目中搜索它 并返回匹配的。在这种情况下,那两个条目有TP,MP。

我试过这样的事情。

df_2.str.contains(df_1)

1 个答案:

答案 0 :(得分:1)

您需要为df_1的每个元素单独执行此操作。熊猫会帮助你:

df_1.apply(df_2.str.contains)

Out: 
       0      1      2
0   True  False  False
1  False   True  False

这是所有组合的矩阵。你可以把它弄清楚:

matches = df_1.apply(df_2.str.contains)
matches.index = df_1
matches.columns = df_2
matches

Out: 
   This is case 12389TP12098 12378MP899 is now resolved 12356DCT is pending
TP                      True                      False               False
MP                     False                       True               False