如何基于行值合并两个大小不等的数据帧

2024-10-01 02:22:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个pandas类型的数据帧

DataFrame 1

Index   Name    Property1 Property2
0     ("a","b")  1          2
1     ("c","d")  3          4
2     ("e","f")  5          6

第二个,有共同的值,但不在同一个索引(我不在乎)。在

^{pr2}$

有没有一种方法可以将这些数据组合在一起,这样生成的DataFrame就是在表之间共享名称的公共行吗?在

即大熊猫手术的结果应该是

Result Frame

Index    Name    Property1 Property2 Property3 Property4
0      ("a","b")  1         2           13       14   
1      ("c","d")  3         4           15       16
2      ("e","f")  5         6           17       18

抱歉,我没有给你实际的熊猫代码来创建以上的数据帧。但我想从概念上理解如何根据列名将两个大小不等的数据帧与不同的“索引”连接起来。我试着合并和合并,但没有得到我想要的结果。在


Tags: 数据方法name名称类型dataframepandasindex
1条回答
网友
1楼 · 发布于 2024-10-01 02:22:17

默认的^{}在这里可以正常工作,假设您的索引实际上是您的索引:

In [22]:

df1.merge(df2)
Out[22]:
        Name  Property1  Property2  Property3  Property4
0  ("a","b")          1          2         13         14
1  ("c","d")          3          4         15         16
2  ("e","f")          5          6         17         18

在这里,merge查找公共列,并对这些列执行inner合并。在

您可以显式地指定要在“Name”列上合并:

^{pr2}$

但在这种情况下,这是不必要的,因为唯一的公共列是“Name”。在

相关问题 更多 >