看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
在pandas中,"哑变量"(也称为独热编码或一位有效编码)是一种将分类数据转换为二进制(0或1)格式的方法。哑变量的主要功能是将具有不同类别的分类特征转换为机器学习算法可以理解的数值特征,从而帮助模型更好地理解和处理这些特征。
我们的数据如下:
import pandas as pd
df = pd.DataFrame(data={
"Gender": ["M", "F", "F", "M", "M"],
"Name": ["Joe", "Mary", "Tina", "Bob", "Tony"]
})
df
'''
Gender Name
0 M Joe
1 F Mary
2 F Tina
3 M Bob
4 M Tony
'''
将 M 列转为哑变量(虚拟变量),即 F 和 M 列,是当前值的为 1,否则为 0,效果如:
'''
Name F M
0 Joe 0 1
1 Mary 1 0
2 Tina 1 0
3 Bob 0 1
4 Tony 0 1
'''
pandas提供了方便的函数来执行哑变量编码,如pd.get_dummies()。这个功能对于处理分类数据以及在机器学习中使用这些数据非常有用。
直接使用 pandas 的 pd.get_dummies()
函数即可完成本需求。
最终代码如下:
pd.get_dummies(data=df,
columns=['Gender'],
dtype='int',
prefix='',
prefix_sep=''
)
'''
Name F M
0 Joe 0 1
1 Mary 1 0
2 Tina 1 0
3 Bob 0 1
4 Tony 0 1
'''
这样就完成了需求。
(完)
参考:https://stackoverflow.com/questions/77030460/pandas-dataframe-error-in-demographic-data
更新时间:2024-08-18 16:17:50 标签:pandas python 哑变量