pandas:get_dummies()与pd.factorize()的用法及区别说明


Posted in Python onMay 21, 2021

1.get_dummies()

pandas.get_dummies(data, prefix=None, prefix_sep='_', dummy_na=False, columns=None,sparse=False, drop_first=False):Convert categorical variable into dummy/indicator variables

>>> import pandas as pd
>>> s = pd.Series(list('abca'))
>>> pd.get_dummies(s)
   a  b  c
0  1  0  0
1  0  1  0
2  0  0  1
3  1  0  0

2.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

Series.factorize(sort=False, na_sentinel=-1):Encode the object as an enumerated type or categorical variable

Pandas有一个方法叫做factorize(),它可以创建一些数字,来表示类别变量,对每一个类别映射一个ID,这种映射最后只生成一个特征,不像dummy那样生成多个特征。

Parameters:

sort : boolean, default False

Sort by values

na_sentinel: int, default -1

Value to mark “not found”

Returns:

labels : the indexer to the original array

uniques : the unique Index

labels:对应的编码array

uniques:需要编码的类型

补充:pandas.get_dummies 的使用及含义

get_dummies 是利用pandas实现one hot encode的方式

get_dummies参数如下:

pandas.get_dummies(data,prefix = None,prefix_sep ='_',dummy_na = False,columns = None,sparse = False,drop_first = False,dtype = None )

data : array-like,Series或DataFrame

prefix :string,字符串列表或字符串dict,默认为None,

用于追加DataFrame列名的字符串。在DataFrame上调用get_dummies时,传递一个长度等于列数的列表。或者,前缀 可以是将列名称映射到前缀的字典。

prefix_sep : string,默认为'_'

如果附加前缀,分隔符/分隔符要使用。或者传递与前缀一样的列表或字典。

dummy_na : bool,默认为False

如果忽略False NaN,则添加一列以指示NaN。

columns : 类似列表,默认为无

要编码的DataFrame中的列名称。如果列是None,那么所有与列 对象或类别 D型细胞将被转换。

sparse : bool,默认为False

伪编码列是否应由SparseArray(True)或常规NumPy数组(False)支持。

drop_first : bool,默认为False

是否通过删除第一级别从k分类级别获得k-1个假人。

版本0.18.0中的新功能。

dtype: D型,默认np.uint8

新列的数据类型。只允许一个dtype。

版本0.23.0中的新功能。

实例

pandas:get_dummies()与pd.factorize()的用法及区别说明

prefix自定义前缀

pandas:get_dummies()与pd.factorize()的用法及区别说明

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中尝试多线程编程的一个简明例子
Apr 07 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
如何安装并使用conda指令管理python环境
Jul 10 Python
Python类反射机制使用实例解析
Dec 30 Python
pytorch中的自定义反向传播,求导实例
Jan 06 Python
python获取响应某个字段值的3种实现方法
Apr 30 Python
基于Python绘制美观动态圆环图、饼图
Jun 03 Python
Python-openCV开运算实例
Jul 05 Python
python如何代码集体右移
Jul 20 Python
Python字符串三种格式化输出
Sep 17 Python
浅谈pytorch中的dropout的概率p
May 27 Python
Python pyecharts案例超市4年数据可视化分析
Aug 14 Python
python spilt()分隔字符串的实现示例
教你用python实现一个无界面的小型图书管理系统
一篇文章带你搞懂Python类的相关知识
Python深度学习之Pytorch初步使用
我对PyTorch dataloader里的shuffle=True的理解
Python快速优雅的批量修改Word文档样式
Django migrate报错的解决方案
You might like
如何使用PHP获取指定日期所在月的开始日期与结束日期
2013/08/01 PHP
php+mysql实现无限分类实例详解
2015/01/15 PHP
mysql alter table命令修改表结构实例详解
2016/09/24 PHP
laravel5.1 ajax post 传值_token示例
2019/10/24 PHP
JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)
2008/11/03 Javascript
jQuery解决iframe高度自适应代码
2009/12/20 Javascript
jquery UI 1.72 之datepicker
2009/12/29 Javascript
jQuery 1.5.1 发布,全面支持IE9 修复大量bug
2011/02/26 Javascript
页面按钮禁用与解除禁用的方法
2014/02/19 Javascript
js控制table合并具体实现
2014/02/20 Javascript
jquery中EasyUI实现异步树
2015/03/01 Javascript
AngularJS中实现用户访问的身份认证和表单验证功能
2016/04/21 Javascript
JavaScript:Array类型全面解析
2016/05/19 Javascript
JS上传图片预览插件制作(兼容到IE6)
2016/08/07 Javascript
javascript 中iframe高度自适应(同域)实例详解
2017/05/16 Javascript
python中关于时间和日期函数的常用计算总结(time和datatime)
2013/03/08 Python
Python HTMLParser模块解析html获取url实例
2015/04/08 Python
Python实现文件按照日期命名的方法
2015/07/09 Python
详谈Python高阶函数与函数装饰器(推荐)
2017/09/30 Python
python实现跨excel的工作表sheet之间的复制方法
2018/05/03 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
python实现QQ空间自动点赞功能
2019/04/09 Python
一款利用纯css3实现的360度翻转按钮的实例教程
2014/11/05 HTML / CSS
美国宠物用品网站:Value Pet Supplies
2018/03/17 全球购物
建筑自我鉴定
2013/10/19 职场文书
银行职业规划书范文
2013/12/28 职场文书
我爱我的祖国演讲稿
2014/05/04 职场文书
目标责任书格式
2014/07/28 职场文书
合法的离婚协议书范本
2014/10/23 职场文书
公司经营目标责任书
2015/01/29 职场文书
毛主席纪念堂观后感
2015/06/17 职场文书
2015年法律事务部工作总结
2015/07/27 职场文书
丧事酒宴答谢词
2015/09/30 职场文书
JavaScript继承的三种方法实例
2021/05/12 Javascript
Python Pygame实战之塔防游戏的实现
2022/03/17 Python
MySQL 数据库 增删查改、克隆、外键 等操作
2022/05/11 MySQL