pandas.Series.combine#
- Series.combine(other, func, fill_value=None)[源代码]#
根据 func 将 Series 与 Series 或标量合并。
使用 func 结合 Series 和 other 来执行组合 Series 的元素级选择。当某个对象缺失值时,假定 fill_value。
- Parameters:
- other仅包括浮点数、整数、布尔列。不适用于 Series。
要与 Series 结合的值。
- funcfunction
接受两个标量作为输入并返回一个元素的函数。
- fill_valuescalar, optional
当某个 Series 或另一个 Series 缺少某个索引时,要使用的值。默认为使用 Series 底层 dtype 的适当 NaN 值。
- Returns:
- Series
结合 Series 和其他对象的组合结果。
参见
Series.combine_first结合 Series 值,优先选择调用 Series 的值。
Examples
考虑两个包含不同鸟类最高时钟速度的数据集
s1和s2。>>> 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