通过求和来聚合两个 Pandas 系列

Aggregating two Pandas series by summing

我正在尝试对两个系列进行求和,这两个系列有一些匹配的索引,但有些是唯一的。例如:

a = pd.Series([0.2, 0.1, 0.3], index=['A', 'B', 'C'])
b = pd.Series([0.2, 0.2], index=['A', 'D'])

请注意索引 A 在 a 和 b 中。我想以一个新系列结束,其中包含所有指数的总和:

A    0.4
B    0.1
C    0.3
D    0.2
dtype: float64

注意索引A是a和b的和(0.2+0.2),而B、C、D是原始值。如果我尝试这样做:

c = a + b

我得到索引 A 的正确值,但所有其他值的值为 NaN。关于执行此操作的最佳方法有什么想法吗?

c = a.add(b, fill_value=0)
In [28]: c
Out[28]: 
A    0.4
B    0.1
C    0.3
D    0.2
dtype: float64 

使用 .add 方法。

http://pandas.pydata.org/pandas-docs/dev/generated/pandas.Series.add.html#pandas.Series.add

Adding two pandas.series objects