用法:
Series.apply(func, convert_dtype=True, args=(), **kwargs)
对 Series 的值调用函数。
可以是 ufunc(适用于整个系列的 NumPy 函数)或仅适用于单个值的 Python 函数。
- func:函数
要应用的 Python 函数或 NumPy ufunc。
- convert_dtype:布尔值,默认为真
尝试为元素函数结果找到更好的 dtype。如果为 False,则保留为 dtype=object。请注意,始终为某些扩展数组 dtypes 保留 dtype,例如 Categorical。
- args:元组
在系列值之后传递给 func 的位置参数。
- **kwargs:
传递给 func 的附加关键字参数。
- Series或DataFrame
如果 func 返回一个 Series 对象,则结果将是一个 DataFrame。
参数:
返回:
注意:
改变传递对象的函数可能会产生意外行为或错误,因此不受支持。有关更多详细信息,请参阅使用用户定义函数 (UDF) 方法进行变异。
例子:
为每个城市创建一个具有典型夏季温度的系列。
>>> s = pd.Series([20, 21, 12], ... index=['London', 'New York', 'Helsinki']) >>> s London 20 New York 21 Helsinki 12 dtype:int64
通过定义一个函数并将其作为参数传递给
apply()
来对值进行平方。>>> def square(x): ... return x ** 2 >>> s.apply(square) London 400 New York 441 Helsinki 144 dtype:int64
通过将匿名函数作为参数传递给
apply()
来对值进行平方。>>> s.apply(lambda x:x ** 2) London 400 New York 441 Helsinki 144 dtype:int64
定义一个需要额外位置参数的自定义函数,并使用
args
关键字传递这些额外参数。>>> def subtract_custom_value(x, custom_value): ... return x - custom_value
>>> s.apply(subtract_custom_value, args=(5,)) London 15 New York 16 Helsinki 7 dtype:int64
定义一个接受关键字参数并将这些参数传递给
apply
的自定义函数。>>> def add_custom_values(x, **kwargs): ... for month in kwargs: ... x += kwargs[month] ... return x
>>> s.apply(add_custom_values, june=30, july=20, august=25) London 95 New York 96 Helsinki 87 dtype:int64
使用 Numpy 库中的函数。
>>> s.apply(np.log) London 2.995732 New York 3.044522 Helsinki 2.484907 dtype:float64
相关用法
- Python pandas.Series.append用法及代码示例
- Python pandas.Series.add_prefix用法及代码示例
- Python pandas.Series.at_time用法及代码示例
- Python pandas.Series.array用法及代码示例
- Python pandas.Series.argmin用法及代码示例
- Python pandas.Series.abs用法及代码示例
- Python pandas.Series.asfreq用法及代码示例
- Python pandas.Series.asof用法及代码示例
- Python pandas.Series.agg用法及代码示例
- Python pandas.Series.at用法及代码示例
- Python pandas.Series.all用法及代码示例
- Python pandas.Series.add用法及代码示例
- Python pandas.Series.add_suffix用法及代码示例
- Python pandas.Series.argmax用法及代码示例
- Python pandas.Series.align用法及代码示例
- Python pandas.Series.aggregate用法及代码示例
- Python pandas.Series.any用法及代码示例
- Python pandas.Series.astype用法及代码示例
- Python pandas.Series.autocorr用法及代码示例
- Python pandas.Series.map用法及代码示例
注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.Series.apply。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。