pandas常用操作详解——pd.concat()

concat函数基本介绍:


功能:基于同一轴将多个数据集合并

pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False,keys=None, levels=None, names=None, verify_integrity=False)

参数详解:
objs:待合并的所有数据集,一般为列表list,list中的元素为series或dataframe
axis:合并时参考的轴,axis=0为基于行合并;axis=1为列合并,默认为0
join:连接方式为内连接(inner)or外连接(outer)
其他参数不常用,这里不做说明

 

举例说明:

 

#构造数据
df1=pd.DataFrame(np.arange(1,17).reshape(4,4),columns=list('ABCD'))
df2=pd.DataFrame(np.arange(17,33).reshape(4,4),columns=list('ABCD'))

 

"1.基于行合并"
data=pd.concat([df1,df2])

 

 

"2.基于列合并"
data1=pd.concat([df1,df2],axis=1)

 

 

"3.其他功能"
#内连接-取交集
#首先重新命名df1的行索引,使df1与df2的索引不同
df1.rename(index={0:1,1:2,2:3,3:4},inplace=True)

data2=pd.concat([df1,df2],axis=1,join='inner')

 

 

 

 

#外连接-取并集
#注:无数据的地方会以空值NaN填充
data3=pd.concat([df1,df2],axis=1,join='outer')

 

 

#指定根据哪个轴来对齐数据
#引入join_axes参数,join_axes=[df1.index]为保留df1的轴,df2将根据df1的index进行合并
data4=pd.concat([df1,df2],axis=1,join_axes=[df1.index])

 

posted @ 2021-03-29 10:15  MMMMiles  阅读(18481)  评论(0编辑  收藏  举报