当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pandas.DataFrame.applymap用法及代码示例


用法:

DataFrame.applymap(func, na_action=None, **kwargs)

将函数应用于 Dataframe 元素。

此方法应用一个函数,该函数接受并向 DataFrame 的每个元素返回一个标量。

参数

func可调用的

Python 函数,从单个值返回单个值。

na_action{无,‘ignore’},默认无

如果‘ignore’,传播 NaN 值,而不将它们传递给 func。

**kwargs

附加关键字参数作为关键字参数传递给 func

返回

DataFrame

转换后的 DataFrame 。

例子

>>> df = pd.DataFrame([[1, 2.12], [3.356, 4.567]])
>>> df
       0      1
0  1.000  2.120
1  3.356  4.567
>>> df.applymap(lambda x:len(str(x)))
   0  1
0  3  4
1  5  5

像 Series.map 一样,NA 值可以忽略:

>>> df_copy = df.copy()
>>> df_copy.iloc[0, 0] = pd.NA
>>> df_copy.applymap(lambda x:len(str(x)), na_action='ignore')
      0  1
0  <NA>  4
1     5  5

请注意,经常存在 func 的矢量化版本,它会更快。您可以按元素对每个数字求平方。

>>> df.applymap(lambda x:x**2)
           0          1
0   1.000000   4.494400
1  11.262736  20.857489

但在这种情况下最好避免 applymap。

>>> df ** 2
           0          1
0   1.000000   4.494400
1  11.262736  20.857489

相关用法


注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.DataFrame.applymap。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。