python学习笔记:pandas练习(2)

这几天遇到一些合并表的需求。需要将多个表进行横向合并。查阅pandas的功能,提供了这个链接的作用。以下是读取多个csv的数据下面看一下实验过程。

1、 横向合并

首先,我们将表格设置为csv格式,每一个表格只包含2个字段id和price价格2个字段。
python学习笔记:pandas练习(2)_第1张图片
依次类推,建五个表,每一个表分别是 这样数据。

1 20
2 30
3 40 
4 50
5 60

接下来利用pandas进行横向合并。pandas 提供read_csv数据,这个读取后返回DataFrame 对象。依次读取5个数据。这看起来并不美观,但是我们依次将命名不同数据df1…df5。有了这个数据,pandas可以采取链接方式将五个数据进行相关联起来。看如下代码。

import pandas as pd
df1 = pd.read_csv('./dian/1.csv')
df2 = pd.read_csv('./dian/2.csv')
df3 = pd.read_csv('./dian/3.csv')
df4 = pd.read_csv('./dian/4.csv')
df5 = pd.read_csv('./dian/5.csv')

# 横向合并
res = pd.concat([df1, df2, df3, df4, df5], axis=1)

# 打印结果
print(res)

res.to_excel('alldian.xlsx')

python学习笔记:pandas练习(2)_第2张图片
打开生成如下。
在这里插入图片描述

2、纵向合并

纵向合并代码和横向的基本上保持一致。不同之处改变一下方向设置为纵向。看如下代码。

res = pd.concat([df1, df2, df3, df4, df5], axis=0)
import pandas as pd
df1 = pd.read_csv('./dian/1.csv')
df2 = pd.read_csv('./dian/2.csv')
df3 = pd.read_csv('./dian/3.csv')
df4 = pd.read_csv('./dian/4.csv')
df5 = pd.read_csv('./dian/5.csv')

# 横向合并
res = pd.concat([df1, df2, df3, df4, df5], axis=0)

# 打印结果
print(res)

res.to_excel('alldian.xlsx')

python学习笔记:pandas练习(2)_第3张图片

python学习笔记:pandas练习(2)_第4张图片

以上2个也是pandas里面比较有用的功能。代码也非常简洁。同理,
pd.read_excel读取excel方式也是可以实现类似功能,只是2者格式不一样而已。

你可能感兴趣的:(python学习笔记)