看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
pandas.concat() 用于数据数据的拼接,将 Pandas 对象与其他轴上的可选设置逻辑连接起来。本文将介绍这个接口的详细使用功能,具体操作教程,参见数据连接。
pd.concat(objs, axis=0, join='outer',
ignore_index=False, keys=None,
levels=None, names=None, sort = False,
verify_integrity=False, copy=True)
需要连接的数据,可以是多个 DataFrame 或者 Series。必传参数。
# Series 或 DataFrame 对象的序列或映射
s1 = pd.Series(['a', 'b'])
s2 = pd.Series(['c', 'd'])
pd.concat([s1, s2])
# df
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])
pd.concat([df1, df2])
连接轴的方法,默认是 0,按行连接,追加在行后边,为 1 时追加到列后边。
# {0/’index’, 1/’columns’}, default 0
pd.concat([df1, df4], axis=1) # 按列
其他轴上的数据是按交集(inner)还是并集(outer)进行合并。
# {‘inner’, ‘outer’}, default ‘outer’
pd.concat([df1, df3], join="inner") # 按交集
是否保留原表索引,默认保留,为 True 会自动增加自然索引。
# bool, default False
pd.concat([df1, df3], ignore_index=True) # 不保留索引
使用传递的键作为最外层级别来构造层次结构索引,就是给每个表指定一个一级索引。
# sequence, default None
pd.concat([s1, s2], keys=['s1', 's2'])
'''
s1 0 a
1 b
s2 0 c
1 d
dtype: object
'''
# list of sequences, default None
pd.concat([s1, s2], levels=(1,2))
索引的名称,包括多层索引。
# list, default None
pd.concat([s1, s2], keys=['s1', 's2'], names=['name', 'age'])
参数为True时,如果合并的数据与原数据包含索引相同的行,将报错。
# boolean, default False
pd.concat(objs, verify_integrity=True)
对非连接轴进行排序。
# bool, default False
pd.concat([df1, df4], axis=1, sort=False)
如果为 False,则不要深拷贝。
# bool, default True
pd.concat(objs, copy=True)
返回一个合并后的 DataFrame(特殊定义按参数定义的要求)。
更新时间:2024-08-14 14:43:00 标签:pandas 连接