合并和求和两个匹配python pandas的数据帧

DGr*_*ham 5 python pandas

我可能正在接近这是错误的方式.如果我有两个数据帧a和b:

数据帧A:

a b c
1 2 4
1 6 5
1 8 7
Run Code Online (Sandbox Code Playgroud)

和Dataframe B:

a b c d
1 2 4 9
1 6 5 7
1 8 7 10
Run Code Online (Sandbox Code Playgroud)

我想加入它们,但是暂时将列名匹配的列加起来,并保留不匹配的列名.所以最终的连接表看起来像:

a   b   c   d
2   4   8   9
2   12  10  7
2   16  14  10
Run Code Online (Sandbox Code Playgroud)

注意:索引始终匹配(即相同顺序的记录数相同)

EdC*_*ica 5

你可以调用add更大的df传递另一个df并调用fillna:

In [18]:
df1.add(df).fillna(df1)

Out[18]:
   a   b   c   d
0  2   4   8   9
1  2  12  10   7
2  2  16  14  10
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用combine_first:

In [20]:
df1.add(df).combine_first(df1)

Out[20]:
   a   b   c   d
0  2   4   8   9
1  2  12  10   7
2  2  16  14  10
Run Code Online (Sandbox Code Playgroud)