pd.concat用法
时间: 2023-12-18 08:11:52 浏览: 139
pd.concat是pandas库中的一个函数,用于将多个数据框按照指定的轴进行拼接。
语法:
pd.concat(objs, axis=0, join='outer', ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=False, copy=True)
参数解释:
- objs: 需要拼接的数据框列表,可以是Series、DataFrame或Panel。
- axis: 拼接的轴,0表示按行拼接,1表示按列拼接。
- join: 拼接方式,可以是'inner'(交集)、'outer'(并集)、'left'(左侧)、'right'(右侧)。
- ignore_index: 是否忽略原有的索引,重新生成新的索引。
- keys: 在拼接后的数据框中增加一个层级索引,用于区分不同的数据来源。
- levels: keys参数的层级结构。
- names: keys参数中每个层级的名称。
- verify_integrity: 是否检查拼接后的数据框中是否有重复的索引值。
- sort: 是否对拼接后的数据框进行排序。
- copy: 是否对原始数据进行复制。
示例:
# 创建两个数据框
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
'B': ['B0', 'B1', 'B2', 'B3'],
'C': ['C0', 'C1', 'C2', 'C3'],
'D': ['D0', 'D1', 'D2', 'D3']})
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
'B': ['B4', 'B5', 'B6', 'B7'],
'C': ['C4', 'C5', 'C6', 'C7'],
'D': ['D4', 'D5', 'D6', 'D7']})
# 将两个数据框按行拼接
result = pd.concat([df1, df2], axis=0)
# 将两个数据框按列拼接
result = pd.concat([df1, df2], axis=1)
# 将两个数据框按列拼接并忽略原有的索引
result = pd.concat([df1, df2], axis=1, ignore_index=True)
# 将两个数据框按行拼接并在拼接后的数据框中增加一个层级索引
result = pd.concat([df1, df2], keys=['df1', 'df2'])
# 将两个数据框按行拼接并在拼接后的数据框中增加两个层级索引
result = pd.concat([df1, df2], keys=['df1', 'df2'], levels=[['data1', 'data2'], ['df1', 'df2']])
# 将两个数据框按行拼接并在拼接后的数据框中增加两个层级索引,并对层级索引进行命名
result = pd.concat([df1, df2], keys=['df1', 'df2'], levels=[['data1', 'data2'], ['df1', 'df2']], names=['group', 'source'])
# 将两个数据框按行拼接并检查拼接后的数据框是否有重复的索引值
result = pd.concat([df1, df2], verify_integrity=True)
阅读全文