【python数据预处理系列】使用Pandas的factorize()函数进行类别编码(整数编码)

在Pandas中,factorize()函数主要用于将分类变量转换为整数编码,这对于减少内存使用或准备数据进行某些统计分析非常有用。

它实际上是将列的唯一值映射到从0开始的整数序列上。

假设有一个DataFrame,其中一列包含一些类别值,你希望将这些类别值替换为从0开始的整数序号,这可以看作是一种“重新命名”的方式。

以下是一个例子:

一、准备数据

import pandas as pd

# 示例数据
data = {'Category': ['Apple', 'Banana', 'Cherry', 'Apple', 'Banana', 'Cherry']}
df = pd.DataFrame(data)

print("Original DataFrame:")
df

二、对Categoey列进行整数编码

# 使用 factorize() 函数对 'Category' 列进行整数编码
# factorize 返回两个值:一个是编码后的Series,另一个是原始类别的数组,这里我们只需要第一个
df['Category'] = pd.factorize(df['Category'])[0]

df

在这个例子中,原始的DataFrame有一列名为Category,包含苹果(Apple)、香蕉(Banana)和樱桃(Cherry)三种水果的名称。

使用pd.factorize()后,这一列的每个唯一字符串值被替换为一个整数:'Apple'变为0,'Banana'变为1,'Cherry'变为2。这样一来,虽然列名没有变,但列中的数据被赋予了新的、连续的整数标识,这在某些数据分析场景下非常有用。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值