我有2只熊猫。系列:
s
-9999.00 26371
240.00 1755
138.99 2
s2
-9999.00 26371
240.00 1755
113.03 6
100.00 4
我尝试过concat:
-9999.00 26371
240.00 1755
138.99 2
-9999.00 26371
240.00 1747
113.03 6
100.00 4
和s + s2:
-9999.00 52742
100.00 NaN
113.03 NaN
138.99 NaN
240.00 3502
但我需要输出添加现有索引的值并保留新索引(如果它们出现),所以混合使用concat和'+'。我怎样才能做到这一点?我的预期输出是
swanted:
-9999.00 52742
100.00 4
113.03 6
138.99 2
240.00 3502
答案 0 :(得分:2)
您可以将.add
方法与fill_value
:
>>> s = pd.Series(index=[-9999, 240, 138.99], data=[26371, 1755, 2])
>>> s2 = pd.Series(index=[-9999, 240, 113.03, 110], data=[26371, 1755, 6, 4])
>>> s.add(s2, fill_value=0)
-9999.00 52742
110.00 4
113.03 6
138.99 2
240.00 3510
或者您可以先将两者对齐,然后只需添加+
:
>>> s.align(s2, fill_value=0)
(-9999.00 26371
110.00 0
113.03 0
138.99 2
240.00 1755, -9999.00 26371
110.00 4
113.03 6
138.99 0
240.00 1755)
>>> s, s2 = s.align(s2, fill_value=0)
>>> s + s2
-9999.00 52742
110.00 4
113.03 6
138.99 2
240.00 3510