使用 Python 组合多个 CSV 文件
Posted
技术标签:
【中文标题】使用 Python 组合多个 CSV 文件【英文标题】:Combining Multiple CSV files with Python 【发布时间】:2020-06-08 13:59:16 【问题描述】:我正在尝试在 python 脚本中将多个 csv 文件合并为 1 个 csv 文件。我想跳过编写每个 csv 文件的前 5 行。遇到一些麻烦,我是 Python 新手。我已经尝试了几个我发现的示例,但工作目录似乎有问题。这是我最近的尝试:
import pandas as pd
import csv
import glob
import os
path = '//server01/tmp/'
files_in_dir = [f for f in os.listdir(path) if f.endswith('csv')]
count = 0
for filenames in files_in_dir:
df = pd.read_csv(filenames)
if count < 6:
count += 1
continue
df.to_csv('out.csv', mode='a')
任何帮助将不胜感激。谢谢!
【问题讨论】:
嗯,您想正确组合数据框。当您执行 pd.read_csv 时,它会读取整个块。所以计数不起作用。 如果您阅读整篇文章,read_csv()
是否有效,或者前 5 行是否破坏了它?如果是前者,您可以只读取 CSV 并在附加到主数据帧时省略这 5 行。
【参考方案1】:
试试这个:
import pandas as pd
import csv
import glob
import os
path = '//server01/tmp/'
files_in_dir = [os.path.join(path,f) for f in os.listdir(path) if f.endswith('csv')]
for filenames in files_in_dir:
df = pd.read_csv(filenames, skiprows = 5)
df.to_csv('out.csv', mode='a')
skiprows:要跳过的行数
nrows:要读取的文件行数
【讨论】:
以上是关于使用 Python 组合多个 CSV 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Excel 中组合具有不同列名和列顺序的多个 CSV 文件?