首页 文章资讯内容详情

如何通过处理 None 值来添加两个 pandas Series 对象?

2026-06-02 1 花语

在pandasSeries功能中,我们有一个名为的函数add(),用于将一个系列对象与另一个系列对象相加。它还用于添加具有整数值和python列表的Series对象。

该方法有一个fill_values参数。它用于通过将此参数替换为浮点值来有效处理缺失值。默认情况下,此fill_value参数的输入是Nan。series.add()

示例

import pandas as pd import numpy as np sr1 = pd.Series(np.arange(1,6)) print(Series Object 1:,sr1, sep=\n) sr2 = pd.Series(np.random.randint(10,20,4)) print(Series Object 2:,sr2, sep=\n) result = sr1.add(sr2) print(Resultant series object with the addition of two Series:, result)

解释

我们有两个系列对象sr1和sr2,分别使用NumPy的arange和random函数创建。sr1对象有5个元素,sr2只有4个元素。

这两个系列对象具有不同的长度。我们正在使用该函数添加这两个对象。series.add()

输出结果

Series Object 1: 0 1 1 2 2 3 3 4 4 5 dtype: int32 Series Object 2: 0 15 1 12 2 16 3 12 dtype: int32 Resultant series object with addition of two Series: 0 16.0 1 14.0 2 19.0 3 16.0 4 NaN dtype: float64

解释

该函数的输出可以在上述块的最后几行中看到。我们可以在结果输出中看到一个NaN值,这是因为两个系列的长度不同。series.add()

示例

result = sr1.add(sr2, fill_value=0) print(The resultant series object of adding two series with fill_value:, result)

解释

为了删除之前输出中的NaN值,我们在这里将0值替换为fill_value参数。

输出结果

The resultant series object of adding two series with fill_value: 0 16.0 1 14.0 2 19.0 3 16.0 4 5.0 dtype: float64

我们可以看到此输出中不存在NaN值,这是由于此fill_value参数而发生的。在此示例中,我们将0作为此fill_value参数的输入,以便它将缺失值添加为0。

示例

import pandas as pd import numpy as np sr1 = pd.Series({a:1,b:2,c:3}) print(Series Object 1:,sr1) sr2 = pd.Series({c:7,d:8,e:9}) print(Series Object 2:,sr2) result1 = sr1.add(sr2) print(Resultant series object without Fill_value:, result1) result2 = sr1.add(sr2, fill_value= 0) print(Resultant series object with Fill_value 0:, result2)

解释

在以下示例中,我们使用具有不同索引标签的Python字典创建了两个Pandas系列对象。

我们已经通过两种方式完成了这两个系列对象之间的加法运算,通过替换fill_value参数并且不违反参数输入。

输出结果

Series Object 1: a 1 b 2 c 3 dtype: int64 Series Object 2: c 7 d 8 e 9 dtype: int64 Resultant series object without Fill_value: a NaN b NaN c 10.0 d NaN e NaN dtype: float64 Resultant series object with Fill_value 0: a 1.0 b 2.0 c 10.0 d 8.0 e 9.0 dtype: float64

两个系列之间的相加是根据索引标签完成的,如果索引不相同,那么add函数会通过替换NaN来自动匹配那些缺失的索引,然后执行相加操作。这就是我们可以在add()函数的结果输出中看到NaN值的原因。