我有这两个具有不同行索引的数据框,但有些列是相同的。 我想要做的是获取一个数据框,将具有相同列名的两个数据框的数量相加
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() 似乎不适用于具有不同索引的数据框。
最佳答案
这条单线就可以解决问题:
In [30]: df1 + df2.ix[0].reindex(df1.columns).fillna(0)
Out[30]:
a b d
A 11 22 3
B 13 24 5
C 15 26 7
关于python - 对来自 2 个数据帧 : Python Pandas 的匹配列执行数学运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29828316/