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

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

大家好,我是皮皮。


一、前言


前几天在Python白银交流群有个叫【蛋蛋】的粉丝问了一个Pandas处理的问题,这里拿出来给大家分享下,一起学习下。

9c5901056c3f7d08035ad6b225c501fb.png

d08f4c7e65dda92a140843d338086e3a.png

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

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

1ad9959a17678d9aaa77d820c9515995.png

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


二、解决过程


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

28651151f2993c4edd07524cc296fd78.png

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

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

a80c014fdd2478a20acd73e2601cec2b.png

关于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

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

2d834583422e4ed24d1c49ea51d48ee0.png


三、总结


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

a5b41f57c8cc4f665d8f4fbe0d25d30a.png

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


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


------------------- End -------------------

相关文章
|
12月前
|
数据采集 数据可视化 数据挖掘
Pandas函数大合集:数据处理神器一网打尽!
Pandas函数大合集:数据处理神器一网打尽!
120 0
|
7月前
|
数据采集 机器学习/深度学习 数据挖掘
利用Beautiful Soup和Pandas进行网页数据抓取与清洗处理实战
本文通过一个实战案例,介绍如何使用Python中的Beautiful Soup库抓取网页数据,并用Pandas进行清洗和处理。首先,确保安装了requests、beautifulsoup4和pandas库。接着,通过requests获取HTML内容,使用Beautiful Soup解析并提取新闻标题、发布时间和正文。然后,利用Pandas对数据进行清洗,包括去除多余空格、替换特殊字符、删除无效数据等。最后,根据需求进行数据处理(如过滤关键词)并保存为CSV或Excel文件。这个案例适合初学者和有一定经验的用户,帮助快速掌握这两个强大的工具。
213 3
|
10月前
|
机器学习/深度学习 数据采集 数据可视化
Python数据科学实战:从Pandas到机器学习
Python数据科学实战:从Pandas到机器学习
|
10月前
|
Python
|
10月前
|
Python
|
10月前
|
Python
Pandas 常用函数-数据合并
Pandas 常用函数-数据合并
94 1
|
10月前
|
数据采集 Python
Pandas 常用函数-数据清洗
Pandas 常用函数-数据清洗
90 2
|
10月前
|
Python
Pandas 常用函数-查看数据
Pandas 常用函数-查看数据
98 2
|
10月前
|
SQL JSON 数据库
Pandas 常用函数-读取数据
Pandas 常用函数-读取数据
102 2
|
10月前
|
索引 Python
Pandas 常用函数-数据排序
10月更文挑战第28天
64 1