实战篇:盘点Pandas中的factorize()函数妙用

Python进阶者
• 阅读 505

大家好,我是皮皮。

一、前言

前几天在Python白银交流群有个叫【蛋蛋】的粉丝问了一个Pandas处理的问题,这里拿出来给大家分享下,一起学习下。 实战篇:盘点Pandas中的factorize()函数妙用 实战篇:盘点Pandas中的factorize()函数妙用

一开始我都没理解她的意思,以为只是简单的替换而已,之前【月神】给了一个代码,当时也写文章记录了,代码如下:

df['col2'] = df['col1'].map({1:"开心", 2:"悲伤", 3:"难过", 4:"泪目"})
df

实战篇:盘点Pandas中的factorize()函数妙用

不过很不巧,这个不是她想要的结果,她想要的结果是同样的几个都是1,然后其余的就是2,3,4,我还是没反应过来,不过【月神】一下子就get到她的意思了,真是太神了。

二、解决过程

这里【月神】给出了解答,使用pd.factorize(data['a'])[0]完美地解决了这个问题。

实战篇:盘点Pandas中的factorize()函数妙用

这个类似于onehot编码,对类型进行了数字编码,如果想要把nan也编码,加一个参数na_sentinel=None。

这样一来,就完美地解决了问题。

实战篇:盘点Pandas中的factorize()函数妙用

关于pd.factorize()函数的定义如下:

pandas.factorize(values, sort=False, order=None, na_sentinel=-1, size_hint=None) Encode input values as an enumerated type or categorical variable

简单来说,它可以实现将字符串特征转化为数字特征。

[图片上传失败...(image-bcfb44-1651146686981)]

三、总结

大家好,我是皮皮。这篇文章主要分享了Pandas中数据处理的问题,主要讲解了pd.factorize()函数的应用,它可以实现将字符串特征转化为数字特征,针对该问题给出了具体的解析和代码演示,帮助粉丝顺利解决了问题。

实战篇:盘点Pandas中的factorize()函数妙用

最后感谢粉丝【蛋蛋】提问,感谢【月神】和【皮皮】给出的具体解析和代码演示,感谢【dcpeng】、【冫马讠成】等人参与学习交流。

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

点赞
收藏
评论区
推荐文章
Python进阶者 Python进阶者
2年前
盘点Pandas中数据删除drop函数的一个细节用法
大家好,我是皮皮。一、前言前几天在Python最强王者群有个叫【Chloe】的粉丝问了一个关于Pandas中的drop函数的问题,这里拿出来给大家分享下,一起学习。二、解决过程下图是粉丝写的代码。index是索引的意思,我感觉这块写在一起了,看上去不太好理解,在里边还多了一层筛选。这里给出【月神】佬的解答,一起来看看吧!直接上图了,如下图所示:下图是官网
Python进阶者 Python进阶者
1年前
怎么用Python把左边这种转成右边这种?
大家好,我是皮皮。一、前言前几天在Python白银交流群【惜君】问了一个Pandas处理Excel的问题,这里拿出来给大家分享下。下面是粉丝自己写的代码:二、实现过程看上去是分组,聚合。这里【此类生物】提出使用.sum().unstack()方法,可以得到
Python进阶者 Python进阶者
1年前
这个怎么改啊?书上就是这样直接生成表格的
大家好,我是皮皮。一、前言前几天在Python白银交流群【周林】问了一个Python关联性处理的问题,这里拿出来给大家分享下。粉丝根据书本来学习的,书上就是这样直接生成表格的。代码如下:importtushareastsimportpandasaspdts
Python进阶者 Python进阶者
11个月前
大神们,函数定义到底哪块错了?
大家好,我是皮皮。一、前言前几天在Python白银交流群【王王雪饼】问了一个Python基础的问题,这里拿出来给大家分享下。其实就是一个函数处理的问题,她的函数定义有问题,一开始看半天,都没觉得有问题。二、实现过程这里【姜明松】、【eric】给了一个解决思
Python进阶者 Python进阶者
3个月前
一个excel文件,我用pandas如何取行,只能用pandas?
大家好,我是皮皮。一、前言前几天在Python白银交流群粉丝问了一个Pandas数据筛选的问题。问题如下:我突然想到,如果一个excel文件,我用pandas如何取行,只能用pandas。二、实现过程后来【月神】给了一个思路和代码如下:其实粉丝之前也问了一
Python进阶者 Python进阶者
2年前
盘点一道Pandas中分组聚合groupby()函数用法的基础题
大家好,我是皮皮。一、前言前几天在Python最强王者交流群有个叫【Chloé】的粉丝问了一个关于Pandas中groupby函数的问题,这里拿出来给大家分享下,一起学习。这个粉丝在法国留学,所以提问是英文的,当然了英文看上去也不难,有点二级英文基础,也看得懂,实在不行,在线翻译一下也问题不大了。二、解决过程这里给出【dcpeng】大佬和【月神】的解答。
Python进阶者 Python进阶者
3个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
Python进阶者 Python进阶者
12个月前
各位大神,我这代码,咋替换不成功?
大家好,我是皮皮。一、前言前几天在Python白银交流群【崔艳飞】问了一个Pandas处理的问题,这里拿出来给大家分享下。二、实现过程这里【瑜亮老师】给了一个解决思路,如下图所示:顺利地解决了粉丝的问题。虽然有警告,但是不影响操作。三、总结大家好,我是皮皮
Python进阶者 Python进阶者
11个月前
盘点一个初学者容易遇到的Python作用域问题
大家好,我是皮皮。一、前言前几天在Python白银交流群【王王雪饼】问了一个Python基础的问题,这里拿出来给大家分享下。下图是她的报错截图:二、实现过程这里【像风自由】给了一个解决思路,从报错上看,其实就是变量没有定义,后来定义了还是有问题:不过感觉还
Python进阶者 Python进阶者
9个月前
盘点Pandas中数据删除drop函数的一个细节用法
大家好,我是皮皮。一、前言前几天在Python最强王者群有个叫【Chloe】的粉丝问了一个关于Pandas中的drop函数的问题,这里拿出来给大家分享下,一起学习。二、解决过程下图是粉丝写的代码。index是索引的意思,我感觉这块写在一起了,看上去不太好理