【发布时间】:2018-10-27 14:08:05
【问题描述】:
假设我有多个 Pandas 数据框,每个数据框都有多个行和列,其中第一个包含某物的 ID。我想做的很简单,我使用合并、连接、连接等失败了...如果 df1 和 df2 的第一列相同,则将第 2 列附加到 df2 到 df1 的末尾,否则跳过它.
例如:
dat1={'A':['1', '2', '3'],'B':['4', '7', '11'],
'C':['5', '8', '12'],'D':['6', '9', '13']}
df1 = pd.DataFrame.from_dict(dat1, orient='index')
dat2={'A':['1', '2', '3'],'B':['4', '7', '11'],
'C':['5', '8', '12'],'D':['6', '9', '13']}
df2 = pd.DataFrame.from_dict(dat2, orient='index')
在这种情况下,由于两者的第一列都包含 A、B、C 和 D,那么合并后的数据框将有 4 行共 6 列。
df_merged
0 1 2 3 4 5
A 1 2 3 1 2 3
B 4 7 11 4 7 11
C 5 8 12 5 8 12
D 6 9 13 6 9 13
如果第二个数据框中的 B 不是 E,那么我根本不会合并它们。
【问题讨论】:
-
想要的输出?
-
我在问题中写的
df_merged。
标签: python pandas dataframe merge