【发布时间】:2021-07-30 00:39:22
【问题描述】:
我有 2 个数据框:df1 和 df2。我想合并 df2 中列链接上的 2 个数据框。 df2 中的链接列包含与 df1 匹配的列和值的列表:
df1 = pd.DataFrame({'p':[1,2,3,4], 'a':[1,2,2,2],'b':['z','z','z','z'],'c':[3,3,4,4],'d':[5,5,5,6]})
df2 = pd.DataFrame({'e':[11,22,33,44], 'link':['a=1,c=3','a=2,c=3','a=2,c=4,d=5','a=2,c=4']})
结果应该以这样的数据框结尾,其中 df2 中的 e 列与 df1 合并在一起:
df_res = pd.DataFrame({'p':[1,2,3,3,4], 'a':[1,2,2,2,2],'b':['z','z','z','z','z'],'c':[3,3,4,4,4],'d':[5,5,5,5,6],'e':[11,22,33,44,44]})
如何在 pandas 中做到这一点?
【问题讨论】:
-
为什么输出数据帧有五行,输入数据帧有四行?
-
链接应该在什么基础上发生?