利用Pandas进行数据预处理:数据合并
1. 数据的合并:concat
1.1 concat的语法说明
1 | pd.concat(objs, axis=0, join='outer', ignore_index=False, keys=None, |
参数说明:
objs: 由Series和DataFrame对象构成的顺序表或映射。如果传入的是字典型数据,字典的键会在排序后传入参数keys中,除非参数keys传入其他内容。任何None类型的对象都会被丢弃,如果所有数据都是None类型,则会抛出一个ValueError。axis: {0, 1, …},默认为0. 要连接的轴。join: {‘inner’, ‘outer’},默认为’outer’。如何处理其他轴上的数据,’outer’执行并集操作,’inner’执行交集操作。ignore_index: 布尔值,默认为False。如果为True,不使用拼接轴向上的索引,结果重新生成一个从0到n-1的整数型索引。如果拼接前的对象所使用的索引没有特殊含义的话,通常会选择重新生成索引。keys: 顺序表,默认为None。传入的序列表会作为拼接结果中沿拼接轴上最外层的索引。levels: 由顺序表构成的列表(List),默认为None。拼接轴上的多层索引,默认情况下会自动生成,如果有需要,可以用该参数指定(值需要唯一)。names: 列表(List),默认为None。设置多层索引中每一层的名字。verify_integrity: 布尔值,默认为False。如果为True,拼接时会检查拼接轴上的标签是否有重复项。copy: 布尔值,默认为True。如果为False,拼接结果不使用拷贝数据(谨慎使用,会造成原数据与拼接后的新数据产生关联)。
1.2 使用默认参数
1 | df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], |
1 | df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6'], |
1 | pd.concat([df1, df2]) # 使用默认参数拼接 |
| df1 | df2 | result |
|---|---|---|
![]() |
![]() |
![]() |
1.3 改变连接轴向
1 | pd.concat([df1, df2], axis=1) # 将轴向改为axis=1 |
| df1 | df2 | result |
|---|---|---|
![]() |
![]() |
![]() |
2. 数据库式连接数据:merge和join
- 标题: 利用Pandas进行数据预处理:数据合并
- 作者: ry Lee
- 创建于 : 2023-02-15 16:16:46
- 更新于 : 2023-11-28 12:17:56
- 链接: https://blog.rylee.fun/2023/02/15/pandas-data-preprocessing-combine/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论



