python连续数据离散化,pandas合并行数据
Pandas是python的一个数据分析包。该工具旨在解决数据分析任务。本文将通过实例详细介绍熊猫数据离散化和合并,有需要的可以参考。
00-1010 1数据离散化1.1为什么要离散化1.2什么是数据的离散化1.3示例:股票涨跌的离散化2数据合并2.1pd.concat实现数据合并2.2pd.merge
目录
1 数据离散化
连续属性离散化的目的是简化数据结构,数据离散化技术可以用来减少给定连续属性值的数量。离散化方法经常被用作数据挖掘的工具。
1.1 为什么要离散化
连续属性的离散化就是将连续属性的取值范围分成若干个离散的区间,最后用不同的符号或整数值来表示每个子区间内的属性值。
离散化的方法有很多种,下面是最简单的操作方法。
原始人身高数据:165,174,160,180,159,163,192,184。假设按照身高分几个区间:150-165,165-180,180~195。所以我们把数据分为三个区间,我可以标记为短、中、高。
1.2 什么是数据的离散化
下面,离散化股票的日波动区间。
1.3.1读取股票数据
先读取股票的数据,筛选出波动区间的数据。
data=pd.read_csv(。/data/stock _ day . CSV’)
p_change=data[p_change]
1.3.2对股价涨跌数据进行分组。
使用的api:
Pd.qcut(data,q):对数据进行分组,通常与value _ counties一起使用,统计每组数列的个数。value _ counties():统计分组次数,自定义区间分组:
pd.cut(数据,箱)
#自己指定分组间隔
bin=[-20,-7,-5,-3,0,3,5,7,20]
p_counts=pd.cut(p_change,bin)
1.3.3股价涨跌分组数据成为一键代码。
什么是一键代码?
为每个类别生成一个布尔列,对于此示例,这些列中只有一列可以取值1。它也被称为热编码。
pandas.get_dummies(数据,前缀=无)
Data :类似数组、系列或数据帧:组名bin=[-20,-7,-5,-3,0,3,5,7,20]
p_counts=pd.cut(p_change,bin)
#获取一键编码矩阵
dummies=PD . get _ dummies(p _ counties,前缀=波动范围)
1.3 举例股票的涨跌幅离散化
如果您的数据由多个表组成,有时您需要组合不同的内容进行分析。
2 数据合并
pd.concat([data1,data2],axis=1)
按行或列合并,axis=0是列索引,axis=1是行索引。
例如,我们将刚刚处理的独热代码与原始数据相结合。
#跟随行索引。
PD . concat([数据,虚拟对象],轴=1)
2.1 pd.concat实现数据合并
pd.merge(left,right,how=inner ,on=None)
您可以指定如何合并两组数据的公共键值对,或者如何通过由另一个数据帧:指定的公共键值how:连接左:数据帧right:以及左3360和右3360。连接方式类似于数据库,分为内连接、外连接、左连接和右连接。2.2.1 pd.merge合并被合并。
左=pd。DataFrame({key1: [K0 , K0 , K1 , K2],
key2: [K0 , K1 , K0 , K1],
A: [A0 , A1 , A2 , A3],
B: [B0 , B1 , B2 , B3]})
右=pd。DataFrame({key1: [K0 , K1 , K1 , K2],
key2: [K0 , K0 , K0],
C: [C0 , C1 , C2 , C3],
D: [D0 , D1 , D2 , D3]})
#默认内部联接
result=pd.merge(left,right,on=[key1 , key2])
左侧连接
result=pd.merge(left,right,how=left ,on=[key1 , key2])
正确连接
result=pd.merge(left,right,how=right ,on=[key1 , key2])
外部连接
result=pd.merge(left,right,how=outer ,on=[key1 , key2])
这就是这篇关于Python熊猫学习的数据离散化和合并的文章。有关Python Panda的更多信息,请搜索热门IT软件开发工作室之前的文章或继续浏览以下相关文章。希望大家以后多多支持热门IT软件开发工作室!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。