Pandas分类数据和顺序数据转换为标志变量
#导入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 score
0 321313 male high 1
1 246852 Female low 2
2 447902 Female middle 3
#拆分id和数据列
id_data=df[['id']] #获得id列
raw_convert_data=df.iloc[:,1:] #指定要转换的列
print(raw_convert_data)
sex level score
0 male high 1
1 Female low 2
2 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 7
0 321313 0.0 1.0 1.0 0.0 0.0 1.0 0.0 0.0
1 246852 1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0
2 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_middle
0 321313 1 0 1 1 0 0
1 246852 2 1 0 0 1 0
2 447902 3 1 0 0 0 1
Pandas分类数据和顺序数据转换为标志变量的更多相关文章
- Pandas分类数据
通常实时的数据包括重复的文本列.例如:性别,国家和代码等特征总是重复的.这些是分类数据的例子. 分类变量只能采用有限的数量,而且通常是固定的数量.除了固定长度,分类数据可能有顺序,但不能执行数字操作. ...
- 【笔记】Pandas分类数据详解
[笔记]Pandas分类数据详解 Pandas Pandas分类数据详解|轻松玩转Pandas(5) 参考:Pandas分类数据详解|轻松玩转Pandas(5)
- 北京市行政村边界shp数据/北京市乡镇边界/北京市土地利用分类数据/北京市气象数据/降雨量分布数据/太阳辐射数据
数据下载链接:数据下载链接 北京是一座有着三千多年历史的古都,在不同的朝代有着不同的称谓,大致算起来有二十多个别称.北京地势西北高.东南低.西部.北部和东北部三面环山,东南部是一片缓缓向渤海倾斜的 ...
- 广西省行政村边界shp数据/广西省乡镇边界/广西省土地利用分类数据/广西省气象数据/降雨量分布数据/太阳辐射数据
数据下载链接:数据下载链接 广西壮族自治区,地处中国南部,北回归线横贯中部,属亚热带季风气候区.南北以贺州--东兰一线为界,此界以北属中亚热带季风气候区,以南属南亚热带季风气候区. 数据范围:全 ...
- 利用 pandas 进行数据的预处理——离散数据哑编码、连续数据标准化
数据的标准化 数据标准化就是将不同取值范围的数据,在保留各自数据相对大小顺序不变的情况下,整体映射到一个固定的区间中.根据具体的实现方法不同,有的时候会映射到 [ 0 ,1 ],有时映射到 0 附近的 ...
- pandas实战——对星巴克数据的分析
一.实验对象 实验对象为星巴克在全球的门店数据,我们可以使用pandas对其进行简单的分析,如分析每个国家星巴克的数量,根据门店数量对国家进行排序等. 二.数据分析 1.读取数据并获取数据行列数 首先 ...
- 其它课程中的python---5、Pandas处理数据和读取数据
其它课程中的python---5.Pandas处理数据和读取数据 一.总结 一句话总结: 记常用和特例:慢慢慢慢的就熟了,不用太着急,慢慢来 库的使用都很简单:就是库的常用函数就这几个,后面用的时候学 ...
- db file sequential read (数据文件顺序读取)
转载:http://www.dbtan.com/2010/04/db-file-sequential-read.html db file sequential read (数据文件顺序读取): db ...
- bisect模块(使用二分法将数据按顺序插入一个列表)
bisect模块功能:使用二分法将数据按顺序插入一个列表 该模块主要有两个函数: 1.insort_right ====>按从小到大顺序将数据插入一个列表 2.bisect_right ...
随机推荐
- DPL, CPL及RPL之间的关系
DPL: Descriptor Privilege Level 1) GDT/LDT表中的描述符 GDT/LDT表中的描述符,描述的是一段内存. 其中的DPL代表着GDT/LDT中的描述符描述的内存段 ...
- 点读系列《流畅的python》
第1章 python数据模型 python的写法是由背后的魔法方法实现的,比如obj[key],解释器实际调用的是obj.__getitem__(key) 作者把魔法方法叫做双下方法,因为有两个下划线 ...
- DNS域名解析服务以及Bind服务程序
一般来讲域名比IP地址更加的有含义.也更容易记住,所以通常用户更习惯输入域名来访问网络中的资源,但是计算机主机在互联网中只能通过IP识别对方主机,那么就需要DNS域名解析服务了. DNS域名解析服务( ...
- Java面试必问-ThreadLocal
前言 在面试环节中,考察"ThreadLocal"也是面试官的家常便饭,所以对它理解透彻,是非常有必要的. 有些面试官会开门见山的提问: “知道ThreadLocal吗?” “讲讲 ...
- 使用IO流将数据库中数据生成一个文件,结果使用Notepad++打开部分数据结尾出现NUL
场景描述: 项目中通过java代码中从数据库中查询一系列数据,对数据做相应处理,然后通过字符流将数据写如一个新生成的文件中,将该项目部署在linux服务器上,最后生成的文件拿到本地使用notepad+ ...
- JSP界面引用百度地图获取坐标
需求: 需要在JSP界面上引用百度地图,文本框中输入地址之后,自动拿到在百度地图上的经纬度 解决步骤: 1.引入百度地图api: head中进行引用<script type="text ...
- HTML CSS的中英文对照
python 大蟒蛇 downloads 下载 install 安装 customize 自定义 path 环境变量:路径 optional 可选的 feature 特性特点 documentatio ...
- idea的spring配置
开始使用idea,开始的时候把相关的插件都禁用了,导致在建项目和configuration的时候不出现spring相关字样 到plugins中找到installed的插件,查看spring boot ...
- 【记录】利用Jquery 在 textarea 内实现文字动态换行
背景: 最近在做前端时候遇到一种情况,需要用js动态输入内容到textarea, 比如实时聊天功能,用户A每次发送信息都需要另起一行. 问题: 根据以往经验,以为用$('#textArea').htm ...
- 2019计蒜之道初赛第3场-阿里巴巴协助征战SARS 费马小定理降幂
题目链接:https://nanti.jisuanke.com/t/38352 发现规律之后就是算ans=2^(n-1)+4^(n-1).但是注意到n十分大是一个长度为1e5的数字.要想办法降幂. 我 ...