當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。