前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python数据分析—apply函数

Python数据分析—apply函数

作者头像
阿黎逸阳
发布2020-11-24 11:30:16
7760
发布2020-11-24 11:30:16
举报
文章被收录于专栏:阿黎逸阳的代码

在对海量数据进行分析的过程中,我们可能要把文本型的数据处理成数值型的数据,方便放到模型中进行使用。

也可能需要把数值型的数据分段进行处理,比如变量的woe化。而这些操作都可以借助python中的apply函数进行处理。

今天介绍数据分析的第四课,教大家如何在python中用apply函数对数据框进行一些复杂一点的操作。

本文目录

  1. 把字符型的数据处理成数值型
  2. 把数值型的数据分段处理

注意:本文沿用数据分析第一课【Python数据分析—数据建立】里的数据框date_frame:

1 把字符型的数据处理成数值型

假设要在原数据框中把性别这一列,”男“字符替换成1、“女”字符替换成0,并生成一个新列。

首先,可以自定义一个替换函数。具体语句如下:

代码语言:javascript
复制
def replace_gender_to_num(val):
    if val=='男':
        return 1
    else:
        return 0

然后用apply函数调用该函数,具体语句如下:

代码语言:javascript
复制
date_frame.gender.apply(replace_gender_to_num)

得到结果如下:

至此,原gender列中“男”字符替换成1,“女”字符替换成0。

把该列加入到原数据框中去,具体语句如下:

代码语言:javascript
复制
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的当成第二类,其余的同学当成第三类。

可以定义一个如下转换函数:

代码语言:javascript
复制
def height_to_class(val):
    if val>=1.8:
        return 1
    elif val>=1.65:
        return 2
    else:
        return 3

然后用apply函数调用该函数,并把得到的结果值保存到原数据框中去,具体语句如下:

代码语言:javascript
复制
date_frame['heigth_class'] = date_frame.height.apply(height_to_class)

得到结果如下:

至此,在python中应用apply函数进行数据处理已介绍完毕,大家可以动手练习一下,思考一下apply函数还有没有别的用途

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 阿黎逸阳的代码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档