系列文章
- Python之Series和DataFrame的数据排序
- Python数据分析之复习知识点
一、concat函数
- concat()函数可以沿着一条轴将多个对象进行堆叠,其使用方式类似数据库中的数据表合并
pandas.concat(objs, axis=0, join=’outer’, join_axes=None, ignore_index=False, keys=None, levels=None, verify_integrity=False, sort=None, copy=True)
- 参数含义如下:
参数 |
作用 |
axis |
表示连接的轴向,可以为0或者1,默认为0 |
join |
表示连接的方式,inner表示内连接,outer表示外连接,默认使用外连接 |
ignore_index |
接收布尔值,默认为False。如果设置为True,则表示清除现有索引并重置索引值 |
keys |
接收序列,表示添加最外层索引 |
levels |
用于构建MultiIndex的特定级别(唯一值) |
names |
设置了keys和level参数后,用于创建分层级别的名称 |
verify_integerity |
检查新的连接轴是否包含重复项。接收布尔值,当设置为True时,如果有重复的轴将会抛出错误,默认为False |
- 根据轴方向的不同,可以将堆叠分成横向堆叠与纵向堆叠,默认采用的是纵向堆叠方式
- 在堆叠数据时,默认采用的是外连接(join参数设为outer)的方式进行合并,当然也可以通过join=inner设置为内连接的方式。
1)横向堆叠与外连接
import pandas as pd
df1=pd.DataFrame({
'A':['A0','A1','A2'],
'B':['B0','B1','B2']})
df1
df2=pd.DataFrame({
'C':['C0','C1','C2'],
'D':['D0','D1','D2']})
df2
横向堆叠合并df1和df2,采用外连接的方式
pd.concat([df1,df2],join='outer',axis=1)
2) 纵向堆叠与内链接
import pandas as pd
first=pd.DataFrame({
'A':['A0','A1','A2'],
'B':['B0','B1','B2'],
'C':['C0','C1'