博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Pandas分类数据和顺序数据转换为标志变量
阅读量:4360 次
发布时间:2019-06-07

本文共 1600 字,大约阅读时间需要 5 分钟。

#导入pandas库import pandas as pd#OneHotEncoder用来将数值型类别变量转换为0-1的标志性变量#LabelEncoder用来将字符串型变量转换为数值型变量from sklearn.preprocessing import OneHotEncoder,LabelEncoder #生成数据df=pd.DataFrame({'id':[321313,246852,447902],                'sex':['male','Female','Female'],                'level':['high','low','middle'],                'score':[1,2,3]})print(df)       id     sex   level  score0  321313    male    high      11  246852  Female     low      22  447902  Female  middle      3#拆分id和数据列id_data=df[['id']] #获得id列raw_convert_data=df.iloc[:,1:] #指定要转换的列print(raw_convert_data)      sex   level  score0    male    high      11  Female     low      22  Female  middle      3#将数值型分类向量转换为标志变量model_enc=OneHotEncoder() #建立标志转换模型对象df_new2=model_enc.fit_transform(raw_convert_data).toarray() #标志转换#合并数据df_all=pd.concat((id_data,pd.DataFrame(df_new2)),axis=1) #重新组合为新数据框print(df_all) #打印输出转换后的数据框       id    0    1    2    3    4    5    6    70  321313  0.0  1.0  1.0  0.0  0.0  1.0  0.0  0.01  246852  1.0  0.0  0.0  1.0  0.0  0.0  1.0  0.02  447902  1.0  0.0  0.0  0.0  1.0  0.0  0.0  1.0# 使用pandas的get_dummies做标志转换df_new3 = pd.get_dummies(raw_convert_data)df_all2 = pd.concat((id_data, pd.DataFrame(df_new3)), axis=1)  # 重新组合为数据框print(df_all2)  # 打印输出转换后的数据框       id  score  sex_Female  sex_male  level_high  level_low  level_middle0  321313      1           0         1           1          0             01  246852      2           1         0           0          1             02  447902      3           1         0           0          0             1

转载于:https://www.cnblogs.com/hankleo/p/11470398.html

你可能感兴趣的文章
Git for Windows之使用SSH协议开通公钥免密登陆功能
查看>>
Identity Server4学习系列一
查看>>
计算机硬件-基础
查看>>
完成登录功能,用session记住用户名
查看>>
C++ code:剩余串排列
查看>>
网页播放器插件
查看>>
php分页功能limit
查看>>
PHP中开启和关闭错误信息的提示
查看>>
selenium动作链
查看>>
敏捷外包工程系列之二:人员结构(敏捷外包工程,敏捷开发,产品负责人,客户价值)...
查看>>
《设计你的人生》的部分经典语录
查看>>
mustache多次渲染和多个赋值
查看>>
《Flutter 实战》开源电子书
查看>>
Python 键盘记录
查看>>
HDU 1381 Crazy Search
查看>>
PLSQL
查看>>
修改计算机名
查看>>
Android-Activity的启动模式
查看>>
禅道项目管理系统整合Selenium IDE的思路
查看>>
网页数据交互!有很多可能不完善希望能提出来
查看>>