Pandas高级篇——数据处理

1.数据合并

(1)数据合并取交集
Pandas高级篇——数据处理_第1张图片Pandas高级篇——数据处理_第2张图片Pandas高级篇——数据处理_第3张图片
(2)merge方法的各种连接:内连接,外连接,左连接,右连接,pd.merge(df1,df2,on=”key”,how=”“)
Pandas高级篇——数据处理_第4张图片Pandas高级篇——数据处理_第5张图片
(3)Series数据的连接,pd.concat(axis=”0或1”)
Pandas高级篇——数据处理_第6张图片Pandas高级篇——数据处理_第7张图片这里写图片描述
(4)Series乘法
Pandas高级篇——数据处理_第8张图片
(5)join=”inner”,取交集。pd.concat([s1,s4],axis=1,join=”inner”)

pd.concat([s1,s4],axis=1,join="inner")
    0   1
a   0   0
b   1   5

(6)利用concat生成具有层次化索引数据结构Series
Pandas高级篇——数据处理_第9张图片Pandas高级篇——数据处理_第10张图片
(7)合并时索引重叠情况,即打补丁处理
Pandas高级篇——数据处理_第11张图片Pandas高级篇——数据处理_第12张图片
DataFrame利用combine_first进行数据打补丁操作

2.数据拆分

(1)pd.cut()分组,pd.value_counts()统计,.codes对区间分组返回索引
Pandas高级篇——数据处理_第13张图片
(2)pd.cut(labels=)加标签,plt.hist()画直方图
Pandas高级篇——数据处理_第14张图片

3.数据的替换,series.replace(a,b)**

Pandas高级篇——数据处理_第15张图片
(1)将多个值统一替换成一个指定的值

series.replace([-999,-1000],NA)
0    1.0
1    NaN
2    2.0
3    NaN
4    NaN
5    3.0
dtype: float64

(2)针对不同的值,进行不同的替换

Pandas高级篇——数据处理_第16张图片

4.数据转化、清除重复数据

Pandas高级篇——数据处理_第17张图片
(1)duplicated() 获取的是bool值
Pandas高级篇——数据处理_第18张图片
(2)drop_duplicates方法去除重复的数据行
Pandas高级篇——数据处理_第19张图片
data.drop_duplicates([“k1”,”k2”]) 与drop_duplicates()效果一样
Pandas高级篇——数据处理_第20张图片
(3)传入keep参数指定需要保留哪些重复的索引
Pandas高级篇——数据处理_第21张图片
(4)通过map函数和字典的映射,添加数据列
Pandas高级篇——数据处理_第22张图片
x.lower()将x变成小写
Pandas高级篇——数据处理_第23张图片Pandas高级篇——数据处理_第24张图片

5.数据重塑和旋转

data.unstack()行索引转换成列索引
data.stack()列索引转换成行索引
(1)Series行列索引转换
Pandas高级篇——数据处理_第25张图片Pandas高级篇——数据处理_第26张图片
(2)DataFrame行列索引转换,pd.Index([” “,” “],names=” “)指定索引与其名称
Pandas高级篇——数据处理_第27张图片

(3)由层次化的行索引转换到列索引的时候指定需要转换的行索引的层数
Pandas高级篇——数据处理_第28张图片Pandas高级篇——数据处理_第29张图片
(4)对DataFrame进行unstack操作时,作为旋转轴的级别将会成为结果中的最低级别

1.stack将列索引变行索引,即将number变为行索引,此时state和number都是行索引
Pandas高级篇——数据处理_第30张图片
2.将result1拼成df,此时df的行索引:state和number;列索引:side
Pandas高级篇——数据处理_第31张图片
3.result2=df.unstack(“state”)指定df行索引中state变列索引,此时result2行索引:number;列索引:side和state
Pandas高级篇——数据处理_第32张图片
4.result2.unstack()将行索引number变成列索引,此时全是列索引,只有一个维度的索引,因此它是Series类型
Pandas高级篇——数据处理_第33张图片
(5)传入参数dropna=True,False,使得最终结果可逆,不可逆
Pandas高级篇——数据处理_第34张图片
dropna=True,可逆
Pandas高级篇——数据处理_第35张图片
dropna=False,不可逆
Pandas高级篇——数据处理_第36张图片

你可能感兴趣的:(Pandas高级篇——数据处理)