pandas:get_dummies()与pd.factorize()的用法及区别说明
作者:Rookiekk 时间:2023-07-10 22:17:32
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
na_sentinel: int, default -1
|
---|---|
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中的新功能。
实例
prefix自定义前缀
来源:https://blog.csdn.net/qq_18888869/article/details/86617896
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
PHP 正则表达式常用函数使用小结
详解Go语言如何使用标准库sort对切片进行排序
Python3基础教程之递归函数简单示例
window.onload和$(function(){})的区别介绍
Go语言LeetCode题解1046最后一块石头的重量
详解TreeView绑定数据库
![](https://img.aspxhome.com/file/2023/0/80120_0s.png)
用Python一键搭建Http服务器的方法
![](https://img.aspxhome.com/file/2023/8/121058_0s.jpg)
css+js实现部分区域高亮可编辑遮罩层
![](https://img.aspxhome.com/file/2023/4/56474_0s.gif)
对pandas的dataframe绘图并保存的实现方法
动态SQL中返回数值的实现代码
CSS sprites图片拼合生成器
Python Pillow(PIL)库的用法详解
![](https://img.aspxhome.com/file/2023/8/81458_0s.jpg)
Python完成毫秒级抢淘宝大单功能
![](https://img.aspxhome.com/file/2023/3/117273_0s.png)
Django框架基础模板标签与filter使用方法详解
![](https://img.aspxhome.com/file/2023/5/66295_0s.png)
MySQL中可为空的字段设置为NULL还是NOT NULL
![](https://img.aspxhome.com/file/2023/0/102390_0s.png)
利用anaconda保证64位和32位的python共存
vue项目页面嵌入代码块vue-prism-editor的实现
![](https://img.aspxhome.com/file/2023/4/132934_0s.png)
一文搞懂Go语言操作Redis的方法
go类型转换及与C的类型转换方式
Python接口自动化系列之unittest结合ddt的使用教程详解
![](https://img.aspxhome.com/file/2023/1/107511_0s.png)