繁体   English   中英

在熊猫中合并具有相同索引的两个数据框

[英]Merging two dataframes with same index in pandas

我有两个数据框。 我需要加入它们,以便将在两个数据框中具有相同名称的那些索引合并为一个并对其值求和。 创建那些在另一个数据框中不存在的索引,并插入其值。 请参见下面的示例。

dataFrame1:

index   col1 col2 col3
A         3    0    4
C         4    1    2
D         3    5    6
G         3    0    0

dataFrame2

index   col1 col2 col3
A         1    1    3
B         4    4    1
C         1    3    0
E         0    2    1
F         1    3    2

我需要以下结果:

index   col1 col2 col3
A         4    1    7
B         4    4    1
C         5    4    2
D         3    5    6
E         0    2    1
F         1    3    2
G         3    0    0

我该怎么做熊猫? 注意:除非在两个数据帧中均为零或NaN,否则任何值均不应视为零。

我认为您可以将addcombine_first一起使用,并通过astype add其转换为int

print df1
       col1  col2  col3
index                  
A         3     0     4
C         4     1     2
D         3     5     6
G         3     0     0

print df2
       col1  col2  col3
index                  
A         1     1     3
B         4     4     1
C         1     3     0
E         0     2     1
F         1     3     2

print df1.add(df2).combine_first(df1).combine_first(df2).astype(int)
       col1  col2  col3
index                  
A         4     1     7
B         4     4     1
C         5     4     2
D         3     5     6
E         0     2     1
F         1     3     2
G         3     0     0

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM