Pandas入门 (二) 一、Pandas中的表连接Merge语法 二、Pandas数据合并 concat 三、Pandas批量拆分Excel并合并Excel 四、Pandas实现分组统计 五、Pandas的分层索引MultiIndex

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

1.merge的语法

pd.mergel(eft, right, how="inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=True, suffixes=('_x','_y'), copy=True, indicator=False, valldate=None)

left, right: 要merge的dataframe或者有name的Series
how: join类型, left', 'right, 'outer', 'inner'
on: join的key, left和right都需要有这个key
left_on: left的df或者series的key
right_on: right的df或者seires的key
left_index, right_index: 使用index而不是普通的column做join
sufixes:两个元素的后缀,如果列有重名,自动添加后缀,默认是('_X','_Y')

数据

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

表连接

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

merge时数量的对齐关系

one-to-one:一对一关系,关联的key都是唯一的

比如(学号,姓名) merge (学号,年龄)
结果条数为:1*1
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

one-to-many:一对多关系,左边唯一key,右边不唯一key

比如(学号,姓名) merge (学号,[语文成绩、数学成绩、英语成绩])
结果条数为:1*N
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

many-to-many:多对多关系,左边右边都不是唯一的

比如(学号,[语文成绩、数学成绩、英语成绩]) merge (学号,[篮球、足球、乒乓球])
结果条数为:M*N
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

非Key字段重名时

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

二、Pandas数据合并 concat

使用场景:

批量合并相同格式的Excel、给DataFrame添加行、给DataFrame添加列

一句话说明concat语法:

使用某种合并方式(inner/outer)
沿着某个轴向(axis=0/1)
把多个Pandas对象(DataFrame/Series)合并成一个。

concat语法:pandas.concat(objs, axis=0, join='outer', ignore_index=False)

objs:一个列表,内容可以是DataFrame或者Series,可以混合
axis:默认是0代表按行合并,如果等于1代表按列合并
join:合并的时候索引的对齐方式,默认是outer join,也可以是inner join
ignore_index:是否忽略掉原来的数据索引

append语法:DataFrame.append(other, ignore_index=False)

append只有按行合并,没有按列合并,相当于concat按行的简写形式

other:单个dataframe、series、dict,或者列表
ignore_index:是否忽略掉原来的数据索引

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

三、Pandas批量拆分Excel并合并Excel

1.读取数据源Excel到Pandas

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

2.将一个大Excel等份拆成多个Excel

使用df.iloc方法,将一个大的dataframe,拆分成多个小dataframe

将使用dataframe.to_excel保存每个小Excel

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

3.合并多个小Excel到一个大Excel

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

四、Pandas实现分组统计

1.制作数据源

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

2.分组使用聚合函数做数据统计

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

3.遍历groupby的结果

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

4.分组探索天气数据

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

五、Pandas的分层索引MultiIndex

●分层索引:在一个轴向上拥有多个索引层级,可以表达更高维度数据的形式;
●可以更方便的进行数据筛选,如果有序则性能更好;
●groupby等操作的结果,如果是多KEY,结果是分层索引,需要会使用
●一般不需要自己创建分层索引(MultiIndex有构造函数但一般不用)

1.导入数据

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

2.Series的分层索引MultiIndex

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

3.MultiIndex筛选有多层索引的数据

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

4.DataFrame的多层索引MultiIndex

Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex

5.MultiIndex筛选多层索引数据

【重要知识】在选择数据时
●元组(key1,key2)代表筛选多层索引,其中key1是索引第一级,key2是第二级,比如key1=JD, key2=2019-10-02
●列表[key1,key2]代表同一层的多个KEY,其中key1和key2是并列的同级索引,比如key1=JD, key2=BIDU
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex
Pandas入门 (二)
一、Pandas中的表连接Merge语法
二、Pandas数据合并 concat
三、Pandas批量拆分Excel并合并Excel
四、Pandas实现分组统计
五、Pandas的分层索引MultiIndex