pandas.Series.combine#

Series.combine(other, func, fill_value=None)[源代码][源代码]#

根据 func 将 Series 与 Series 或标量组合。

使用 func 结合 Series 和 other 以执行对合并 Series 的逐元素选择。当从两个合并对象中的某一个索引缺少值时,假设 fill_value

参数:
其他序列或标量

要与 Series 结合的值。

函数函数

接受两个标量作为输入并返回一个元素的函数。

fill_value标量,可选

当一个索引在一个Series或另一个Series中缺失时,假设的值。默认指定使用Series基础数据类型的适当NaN值。

返回:
系列

将 Series 与其他对象结合的结果。

参见

Series.combine_first

合并 Series 值,首先选择调用 Series 的值。

例子

考虑两个数据集 s1s2,它们包含不同鸟类的最高时钟速度。

>>> s1 = pd.Series({"falcon": 330.0, "eagle": 160.0})
>>> s1
falcon    330.0
eagle     160.0
dtype: float64
>>> s2 = pd.Series({"falcon": 345.0, "eagle": 200.0, "duck": 30.0})
>>> s2
falcon    345.0
eagle     200.0
duck       30.0
dtype: float64

现在,将两个数据集合并,并查看这两个数据集中鸟类的最高速度

>>> s1.combine(s2, max)
duck        NaN
eagle     200.0
falcon    345.0
dtype: float64

在之前的例子中,鸭子的结果值缺失了,因为NaN和浮点数的最大值是NaN。因此,在例子中,我们设置 fill_value=0,这样返回的最大值将是某个数据集的值。

>>> s1.combine(s2, max, fill_value=0)
duck       30.0
eagle     200.0
falcon    345.0
dtype: float64