如何在Python中对数据框中的元素应用函数?
有时需要沿着数据框的元素应用某些函数。并非所有函数都可以进行矢量化。这就是函数“applymap”发挥作用的地方。
这需要一个单一值作为输入,并返回一个单一值作为输出。
示例
import pandas as pd
import numpy as np
my_df = pd.DataFrame(np.random.randn(5,5),columns=['col_1','col_2','col_3', 'col_4', 'col_5'])
print("生成的数据框为:")
print(my_df)
my_df.applymap(lambda x:x*11.45)
print("使用applymap函数")
print(my_df.apply(np.mean))
输出
生成的数据框为:
col_1 col_2 col_3 col_4 col_5
0 -0.671510 -0.860741 0.886484 0.842158 2.182341
1 -1.355763 0.247240 -0.653630 -0.278095 0.163044
2 -0.816203 1.664006 1.555648 1.625890 -0.412338
3 -1.013273 -1.565076 1.297014 -0.303504 -1.623573
4 0.725949 -0.077588 -0.886957 0.433478 -0.300151
使用applymap函数
col_1 -0.626160
col_2 -0.118432
col_3 0.439712
col_4 0.463985
col_5 0.001865
dtype: float64
说明
-
导入所需的库,并为易于使用而分别进行别名。
-
使用“随机”函数创建数据框,并创建具有5行5列的数据。
-
在定义数据框值时,还定义了列的名称。
-
将数据框打印到控制台。
-
在数据框的元素上应用“applymap”函数。
-
函数定义是写在“applymap”函数内部的Lambda函数。
-
在控制台打印数据。
极客教程