合并 csv 文件 - python

Posted

技术标签:

【中文标题】合并 csv 文件 - python【英文标题】:merge csv files - python 【发布时间】:2020-09-03 01:13:18 【问题描述】:

我正在使用 for 循环来合并 jupyter notebook 上的 csv 文件,但是我的结果返回的是一个列表而不是一个数据框。有人可以帮助我并告诉我我做错了什么吗?先感谢您。

files = ['babd_light_z1.csv','babd_light_z2.csv','babd_light_z3.csv']
data = []
for f in files:
     data.append(pd.read_csv(f))

type(data) # returns  list

【问题讨论】:

data = []更改为data = pd.DataFrame()并在循环体中重新分配data 【参考方案1】:

试一试:

combined = pd.combine(data, axis=0)

【讨论】:

【参考方案2】:

您可以简单地在循环外使用pd.concat(data, axis=0, ignore_index=True) 来合并您的 csv 文件,如下所示:

files = ['babd_light_z1.csv', 'babd_light_z2.csv', 'babd_light_z3.csv']

data = []

for f in files:
    data.append(pd.read_csv(f))

df = pd.concat(data, axis=0, ignore_index=True)

type(df) 应该返回 pandas.core.frame.DataFrame

【讨论】:

以上是关于合并 csv 文件 - python的主要内容,如果未能解决你的问题,请参考以下文章

将具有不同架构(列)的多个文件 (.csv) 合并/合并为单个文件 .csv - Azure 数据工厂

如何将多个csv按行合并?(不是首尾相接的按列合并)

如何读取CSV文件后合并内容

合并 CSV 文件:追加而不是合并

如何将多个 csv 文件合并为一个 csv 文件

如何从命令行合并两个 CSV 文件?