最近需求中需要用到DF的数据合并,查了下,顺便记录下
官方文档: https://pandas.pydata.org/pandas-docs/stable/user_guide/merging.html
使用pd.concat()
纵向合并
从图中可以看到,把df1,df2,df3的数据进行纵向合并。
import pandas as pd
pd.concat([df1,df2,df3],axis=0)
其实这里的axis可以不写,因为这里axis的默认值就是0,当这个值为0的时候,就是横向合并了。
当使用key时,则可以在合并后标记合并源,方便之后进行数据查看
横向合并
从图中可以看到,把df1,df4的数据进行了横向的合并
import pandas as pd
pd.concat([df1, df4], axis=1)
这里就可以看到,这时的axis的值就变成1,这就代表时横向合并
.但是当我们把join参数换成 inner 时候 (默认为 ourter ),这时候代表合并交集,默认是合并并集。
pd.concat([df1, df4], axis=1, join="inner")
当我们使用reindex的时候,则只会合并 df1含有的index
pd.concat([df1, df4.reindex(df1.index)], axis=1)