📅  最后修改于: 2023-12-03 14:52:00.952000             🧑  作者: Mango
在数据分析中,经常需要将分类变量转换为虚拟变量/哑变量,以便更好地建立模型。在 Python 中,使用 Pandas 库可以轻松地创建虚拟变量。
虚拟变量是指将一个分类变量拆分成多个二元变量,每个二元变量表示分类变量中的一种状态。比如,将"性别"变量拆分成两个二元变量,一个表示"男性",一个表示"女性"。
下面是使用 Pandas 创建虚拟变量的步骤:
import pandas as pd
df = pd.DataFrame({'gender': ['M', 'F', 'F', 'M', 'M']})
dummies = pd.get_dummies(df['gender'], prefix='gender')
其中,get_dummies 函数的第一个参数是要转换为虚拟变量的列,prefix 参数用于给每个虚拟变量的列名加上前缀 "gender_",以区分其他变量。
df = pd.concat([df, dummies], axis=1)
其中,使用 concat 函数将原始数据框和虚拟变量合并,axis=1 表示按列合并。
print(df)
输出:
gender gender_F gender_M
0 M 0 1
1 F 1 0
2 F 1 0
3 M 0 1
4 M 0 1
其中,gender_F 和 gender_M 是从原始“gender”列中创建的虚拟变量。
这样,我们就成功地将分类变量转换为了虚拟变量。在实际应用中,还需要根据具体情况调整虚拟变量的数量和命名方式,以便更好地建立模型。