python 数据分析 -pandas 基础(4)- 数据映射 apply
pandas 数据映射 apply
今天我们分享一个非常常用且重要的 pandas 数据映射函数 apply。
我们在数据分析过程中,通常需要对原始的数据进行很多转换和处理,比如对于出生日期,我们希望获得年龄的特征;对于身高和体重的数据,我们希望或者 BMI 指数等等。
这种操作在分析过程是最常用的数据处理,这个过程涉及对一列或者多列数据进行操作。pandas 中用 apply 函数来处理这个过程。
apply 函数的作用:就是用某个指定的函数 f 来依次作用于 DataFrame 或者 Series 的每个数据,可以指定按行处理和按列处理。
我们看一个例子:
复制代码
复制代码
如果是计算逻辑比价简单的,处理逻辑可以通过 lambda 函数进行处理;比如上面的例子中通过出生日期计算年龄。默认情况下 apply 传入函数的参数为 series(按列),映射函数对每一列的每一行数据执行函数操作。
也可以定义一个函数来代替 lambda,如下 cal_age 代替:
复制代码
如果数据处理需要多个数据,比如计算 BMI 指数需要升高和体重。
复制代码
从上可知,计算多列数据时,apply 传入映射函数的参数为 Series,通过 axis 指定按行还是按列,axis=1 为按行,即每一行的多个列的值传入映射行数。以 bmi 例子,传入的是每个人的身高和体重参数。
apply 函数就分享到这,希望对你有帮助。
版权声明: 本文为 InfoQ 作者【AIWeker】的原创文章。
原文链接:【http://xie.infoq.cn/article/cf2bf37d6d522277f8537b782】。文章转载请联系作者。
评论