pandas.get_dummies 的用法

get_dummies 是利用pandas实现one hot encode的方式。详细参数请查看官方文档
官方文档在这里

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

例子:

import pandas as pd
df = pd.DataFrame([  
            ['green' , 'A'],   
            ['red'   , 'B'],   
            ['blue'  , 'A']])  

df.columns = ['color',  'class'] 
pd.get_dummies(df) 

get_dummies 前:
get_dummies 前
get_dummies 后:
get_dummies 后

上述执行完以后再打印df 出来的还是get_dummies 前的图,因为你没有写

df = pd.get_dummies(df)

可以对指定列进行get_dummies

pd.get_dummies(df.color)

这里写图片描述

将指定列进行get_dummies 后合并到元数据中

df = df.join(pd.get_dummies(df.color))

这里写图片描述

`pandas.get_dummies()` 是一个用于执行独热编码(One-Hot Encoding)的方法,它将分类变量转换成一系列二进制列,每一列表示原始类别的一个可能取值。这个函数主要用于处理具有离散类别的数据。 以下是`pandas.get_dummies` 函数的一些关键参数和用法: 1. **data**: 通常是一个包含分类特征的数据框(DataFrame)。 ```python df = pd.DataFrame([['green' , 'A'], ['red' , 'B'], ['blue' , 'A']]) df.columns = ['color', 'class'] ``` 2. **prefix**: 可选,用于创建新列名称的前缀,默认情况下为原列名加上下划线。 ```python prefix = 'category_' pd.get_dummies(df, prefix=prefix) ``` 3. **prefix_sep**: 可选,指定前缀与列名之间的分隔符,默认为 '_'. 4. **dummy_na**: 是否为缺失值创建额外的虚拟列,默认为 `False`。如果设置为 `True`,会为 `NaN` 创建一个新的虚拟列。 5. **columns**: 如果给定,只对这些列应用独热编码。 6. **sparse**: 如果 `True`,返回一个稀疏矩阵,适用于大型数据集,但可能导致内存占用增加。默认为 `False`。 7. **drop_first**: 如果 `True`,对于多级分类,在每个级别内只保留一个虚拟列,第一个遇到的,其余的会被丢弃。默认为 `False`。 举例来说,假设我们有颜色和类别两列,我们可以这样应用独热编码: ```python df = pd.get_dummies(df, columns=['color']) ``` 这将创建新的列如 `color_green`, `color_red`, 和 `color_blue`,对应于原始数据的颜色。 参考文档:[Pandas get_dummies官方文档](https://pandas.pydata.org/docs/reference/api/pandas.get_dummies.html)[^1]
评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值