在Pandas的实践过程中,我们经常需要将两个DataFrame合并组合在一起再进行处理,比如将不同来源的数据合并在一起,或者将不同日期的DataFrame合并在一起。DataFrame的合并组合从方向上分,大体上分为两种情况:横向的,纵向的。(这个很容易理解吧)
看下如下的图示(图片来自Pandas官网)
横向
纵向
另外需要注意的是,两个DataFrame在合在一起的时候,如果针对重叠项(比如都有column B)会有两种不同的处理方式,一种是针对重叠项进行合并处理(比如相加,或者直接取代);另一种是忽略重叠项,只是简单的组合在一起。前者我们称为合并,后者我们叫做组合。
另外,在Pandas中有很多不同函数和不同用法,比如有concat, join, merge, append,它们各有不同的使用场景。
纵向连接
In [45]: import pandas as pd
In [46]: df = pd.DataFrame({"name": ["zhangsan", "lisi", "wangwu"], "city": ["beijing"
...: , "beijing", "shenzhen"], "order": [12, 33, 67]})
In [47]: df
Out[47]:
city name order
0 beijing zhangsan 12
1 beijing lisi 33
2 shenzhen wangwu 67
In [48]: df2 = pd.DataFrame({"name": ["zhanghai", "liyang", "wangjing"], "city": ["sha
...: nghai", "shenzhen", "chengdu"], "order": [2, 3, 7]})
In [49]: df2
Out[49]:
city name order
0 shanghai zhanghai 2
1 shenzhen liyang 3
2 chengdu wangjing 7
# concat默认按行拼接(即纵向连接,axis=0), 也可以按列来连接(axis=1)
# 注意concat拼接时,其参数是一个数组 ,因此可以拼接多个DataFrame
In [51]: pd.concat([df, df2])
Out[

本文详细介绍了如何在Pandas中进行DataFrame的横向和纵向拼接,包括使用`concat`、`append`、`merge`等方法。通过实例展示了不同连接方式的用法,如按行(纵向)连接、按列(横向)连接,以及如何处理重叠列。同时还讲解了`merge`的参数,如`on`, `how`, `suffixes`等,以及`join`与`merge`的区别。"
112237189,10545626,Word双面打印攻略:预留装订线,奇偶页设置与格式调整,"['Word打印技巧', '文档装订', '办公软件', '打印设置', 'Word教程']
最低0.47元/天 解锁文章
740

被折叠的 条评论
为什么被折叠?



