在对海量数据进行分析的过程中,我们可能要把文本型的数据处理成数值型的数据,方便放到模型中进行使用。也可能需要把数值型的数据分段进行处理,比如变量的woe化。而这些操作都可以借助python中的apply函数进行处理。
今天介绍数据分析的第四课,教大家如何在python中用apply函数对数据框进行一些复杂一点的操作。
本文目录注意:本文沿用数据分析第一课【Python数据分析—数据建立】里的数据框date_frame:
把字符型的数据处理成数值型
把数值型的数据分段处理
1 把字符型的数据处理成数值型
假设要在原数据框中把性别这一列,”男“字符替换成1、“女”字符替换成0,并生成一个新列。首先,可以自定义一个替换函数。具体语句如下:def replace_gender_to_num(val): if val=='男': return 1 else: return 0
然后用apply函数调用该函数,具体语句如下:date_frame.gender.apply(replace_gender_to_num)
得到结果如下:至此,原gender列中“男”字符替换成1,“女”字符替换成0。把该列加入到原数据框中去,具体语句如下:date_frame['new_gender'] = date_frame.gender.apply(replace_gender_to_num)
得到结果如下:可以发现性别为男,在new_gender中对应值为1,性别为女在new_gender中对应值为0。2 把数值型的数据分段处理
在建模过程中,要把不同分段的值转化成对应的woe,需要用到apply函数进行处理。类似的,在这个实例中假设要把身高高于1.8的同学当成第一类,身高高于1.65的当成第二类,其余的同学当成第三类。可以定义一个如下转换函数:def height_to_class(val): if val>=1.8: return 1 elif val>=1.65: return 2 else: return 3
然后用apply函数调用该函数,并把得到的结果值保存到原数据框中去,具体语句如下:date_frame['heigth_class'] = date_frame.height.apply(height_to_class)
得到结果如下:至此,在python中应用apply函数进行数据处理已介绍完毕,大家可以动手练习一下,思考一下apply函数还有没有别的用途。
往期回顾:3D星空图3D星空图V2版520表白代码合集用python绘制皮卡丘娱乐圈排行榜动态条形图绘制
扫一扫关注我
19967879837
投稿微信