【发布时间】:2018-05-01 17:20:31
【问题描述】:
我正在尝试合并 2 个数据帧,但无法完全得到我要查找的内容。
数据框 1 如下所示。
Index Date Data1 Data2
A 2007-07-21 76 32
A 2007-08-13 nan 23
B 2007-06-15 53 nan
B 2007-07-15 87 39
数据框 2 如下所示:
Index Date Data3 Data4
A 2007-07-24 14 nan
A 2007-08-13 67 51
B 2007-06-21 32 36
B 2007-07-15 nan 91
两个数据帧中的索引相同。索引标签包含重复项。日期有一些重叠,但每个数据框也包含唯一的日期。
我想要的结果如下:具有相同索引和日期的行在结果中出现一次,并具有组合值(Data1、Data2、Data3、Data4)。如果索引/日期组合在左侧数据帧或右侧数据帧中出现一次,则该组合将与来自相应数据帧的相关数据和不存在值的数据帧列中的 nan 一起出现。
从上述数据帧中,结果将如下所示:
Index Date Data1 Data2 Data3 Data4
A 2007-07-21 76 32 nan nan
A 2007-07-24 nan nan 14 nan
A 2007-08-13 nan 23 67 51
B 2007-06-15 53 nan nan nan
B 2007-06-21 nan nan 32 36
B 2007-07-15 87 39 nan 91
这个练习包含左连接和外连接。不知道如何使用 pd.merge 或 pd.concat 来获得它。
提前感谢您的洞察力。
【问题讨论】:
标签: python pandas merge concat