【发布时间】:2015-04-23 15:43:21
【问题描述】:
我有这两个具有不同行索引的数据框,但有些列是相同的。 我想要做的是获取一个数据框,它将具有相同列名的两个数据框的数量相加
df1 = pd.DataFrame([(1,2,3),(3,4,5),(5,6,7)], columns=['a','b','d'], index = ['A', 'B','C','D'])
df1
a b d
A 1 2 3
B 3 4 5
C 5 6 7
df2 = pd.DataFrame([(10,20,30)], columns=['a','b','c'])
df2
a b c
0 10 20 30
输出数据框:
a b d
A 11 22 3
B 13 24 5
C 15 16 7
最好的方法是什么? .add() 似乎不适用于具有不同索引的数据帧。
【问题讨论】:
-
这里的问题是对齐会发生在列和索引上。你关心如何到达最终的df吗?我的意思是这行得通:
pd.DataFrame(data=(df1.values + df2.values), columns = df2.columns, index = df1.index) -
如果我没记错的话,
df1有a,b,d列,df2有a,b,c列。而且,当您添加时,您只想添加a,b常用列?