我有两个具有相同列和索引名称的数据框,每个单元格中包含一个列表,如下所示:
df1
A B
c [1,2] [2,5]
d [3,5] [4,1]
df2
A B
c [2,3] [4,5]
d [2,3] [5,3]
我只希望有一个数据框,如下所示:
df_1&2
A B
c [1,2,2,3] [2,5,4,5]
d [3,5,2,3] [4,1,5,3]
有什么建议吗?
另一件事;如何仅在索引重复的地方加入数据框并跳过唯一的数据框:
df1
A B
c [1,2] [2,5]
e [3,5] [4,1]
df2
A B
c [2,3] [4,5]
f [2,3] [5,3]
结果将是:
df1&2
A B
c [1,2,2,3] [2,5,4,5]
答案 0 :(得分:1)
通过+
加入DataFrame,仅在两个DataFrame
中加入必要的相同索引值,并仅用列表填充列:
df = df1 + df2
print (df)
A B
c [1, 2, 2, 3] [2, 5, 4, 5]
d [3, 5, 2, 3] [4, 1, 5, 3]
编辑:
idx = df1.index.intersection(df2.index)
df = df1.loc[idx] + df2.loc[idx]