Pandas 12. conca合并
Pandas conca合并
1. 方法介绍
pandas.concat(objs, axis=0, join=‘outer’, ignore_index=False,
levels=None, names=None, verify_integrity=False, sort=False, copy=True, keys=None, )
2. 参数说明
主要介绍objs, axis, join, ignore_index四个参数
- objs: 要合并的DataFrame/Series组成的列表
- axis: 指定连接轴0/index或者1/column
- join: 指定合并的方式inner/outer
- ignore_index: 指定是否重新生成index或者column, 0,1,2…,n-1 默认为False
3. 程序实例
import pandas as pd# df和df2的最后一列的列名不一样
df1 = pd.DataFrame({"a": ["a0", "a1", "a2"],"b": ["b0", "b1", "b2"],"c": ["c0", "c1", "c2"]}, index=[1, 2, 3])
df2 = pd.DataFrame({"a": ["A0", "A1", "A2"],"b": ["B0", "B1", "B2"],"d": ["C0", "C1", "C2"]}, index=[1, 2, 3])
ser = pd.Series([11, 22, 33], index=[1, 2, 3], name="a")# 1. axis 指定连接轴0/index或者1/column
df3 = pd.concat([df1, ser, df2], axis=0)
# print(df3)df4 = pd.concat([df1, ser, df2], axis=1)
# print(df4)# 2. join 指定合并的方式inner/outer
df5 = pd.concat([df1, df2], axis=1, join="inner") # join="inner", 如果axis=1时, 则会将两个df有相同index行合并; 如果axis=0, 则会将两个df有相同column的列合并;
# print(df5)
df6 = pd.concat([df1, df2], axis=0, join="outer") # join="outer", 如果axis=1时, 则会将两个df有相同index行合并, 不相同的填充nan; 如果axis=0, 则会将两个df有相同column的列合并, 不相同的填充nan
# print(df6)# 3. ignore_index 指定是否重新生成index或者column, 0,1,2..,n-1 默认为False
df7 = pd.concat([df1, df2], axis=0, ignore_index=True) # ignore_index=True, 如果axis=1时, 则column会自动生成为0,1,2..,n-1; 如果axis=0, 则index会自动生成为0,1,2..,n-1;
# print(df7)
df8 = pd.concat([df1, df2], axis=0, ignore_index=False) # ignore_index=False, index或者column保持原df的
# print(df8)
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
