[英]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,否則任何值均不應視為零。
我認為您可以將add
與combine_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.