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 01 Python
使用Python编写简单网络爬虫抓取视频下载资源
Nov 04 Python
python实现在字符串中查找子字符串的方法
Jul 11 Python
详解Swift中属性的声明与作用
Jun 30 Python
Python内置函数——__import__ 的使用方法
Nov 24 Python
NumPy 如何生成多维数组的方法
Feb 05 Python
儿童学习python的一些小技巧
May 27 Python
Python json模块dumps、loads操作示例
Sep 06 Python
pycharm 配置远程解释器的方法
Oct 28 Python
运用Python的webbrowser实现定时打开特定网页
Feb 21 Python
python将字符串list写入excel和txt的实例
Jul 20 Python
Tensorflow使用Anaconda、pycharm安装记录
Jul 29 Python
python spilt()分隔字符串的实现示例
教你用python实现一个无界面的小型图书管理系统
一篇文章带你搞懂Python类的相关知识
Python深度学习之Pytorch初步使用
我对PyTorch dataloader里的shuffle=True的理解
Python快速优雅的批量修改Word文档样式
Django migrate报错的解决方案
You might like
评分9.0以上的动画电影,剧情除了经典还很燃
2020/03/04 日漫
Json对象替换字符串占位符实现代码
2010/11/17 Javascript
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
js传中文参数controller里获取参数乱码问题解决方法
2014/01/03 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
jQuery 遍历函数详解
2015/07/05 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
用原生JS对AJAX做简单封装的实例代码
2016/07/13 Javascript
浅谈js script标签中的预解析
2016/12/30 Javascript
Vue2学习笔记之请求数据交互vue-resource
2017/02/23 Javascript
mockjs,json-server一起搭建前端通用的数据模拟框架教程
2017/12/18 Javascript
vue组件中使用props传递数据的实例详解
2018/04/08 Javascript
JS的函数调用栈stack size的计算方法
2018/06/24 Javascript
JS array数组检测方式解析
2020/05/19 Javascript
跟老齐学Python之编写类之三子类
2014/10/11 Python
python numpy函数中的linspace创建等差数列详解
2017/10/13 Python
python Celery定时任务的示例
2018/03/13 Python
Python打包方法Pyinstaller的使用
2018/10/09 Python
用Python将结果保存为xlsx的方法
2019/01/28 Python
Python随机函数库random的使用方法详解
2019/08/21 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
2020/04/30 Python
Python 实现简单的客户端认证
2020/07/29 Python
python 实现网易邮箱邮件阅读和删除的辅助小脚本
2021/03/01 Python
html5 touch事件实现触屏页面上下滑动(一)
2016/03/10 HTML / CSS
HTML5实现桌面通知 提示功能
2017/10/11 HTML / CSS
澳大利亚领先的在线美容商店:Facial Co
2017/10/22 全球购物
巴西电子、家电、智能手机购物网站:Girafa
2019/06/04 全球购物
美术专业学生个人自我评价
2013/09/19 职场文书
电子商务专业学生的学习自我评价
2013/10/27 职场文书
档案接收函范文
2014/01/10 职场文书
班委竞选演讲稿
2014/04/28 职场文书
庆国庆活动总结
2014/08/28 职场文书
经理岗位职责
2015/02/02 职场文书
学校青年志愿者活动总结
2015/05/06 职场文书
2016暑期社会实践心得体会范文
2016/01/14 职场文书
创业计划书之网吧
2019/10/10 职场文书