我想做以下合并(很难用语言描述):
这是我的数据框
df8=pd.DataFrame({'names':[['Hans','Meier'],['Debby','Harry','Peter']]})
names
0 ['Hans','Meier']
1 ['Debby','Harry','Peter']
df9=pd.DataFrame({'caller':['Hans','Meier','Debby','Harry','Peter'],'text':[['hi im hans'],['hi im meier'],['hi im debby'],['hi im harry'],['hi im peter']]})
df9.set_index(df9.caller, inplace = True)
df9.drop('caller', axis = 1, inplace = True)
caller text
Hans ['hi im hans']
Meier ['hi im meier']
.
.
.
结果应该是这样的
names content
0 ['Hans','Meier'] ['hi im hans', 'hi im meier']
1 ['Debby','Harry','Peter'] ['hi im debby', 'hi im harry', 'hi im peter']
因此,如果该人是相应姓名列表的元素,则 df9 中的人所说的文本将出现在 df8 中。
我认为这是一个类似的问题this但我没有看到解决方案
我查看了有关连接、连接和合并的 pandas 文档,但也没有找到解决方案