我需要 python 程序员的帮助来解决我在处理数据时遇到的问题:-
我将 .csv 文件放在这样的目录结构中:-
-主目录
- 子目录 1
- 子目录1A
- 文件.csv
- 子目录1A
- 子目录 2
- 子目录2A
- 文件.csv
- 子目录2A
- 子目录 3
- 子目录 3A
- 文件.csv
- 子目录 3A
我不想进入每个目录并访问 .csv 文件,而是想运行一个脚本来组合所有子目录的数据。
- 子目录 1
每个文件都有相同类型的标题。我需要维护 1 个大的 .csv 文件,只有一个标题,所有 .csv 文件数据都可以一个接一个地附加。
我有 python 脚本,可以将所有文件合并到一个文件中,但前提是这些文件放在一个文件夹中。
能否帮忙提供一个可以处理上述目录结构的脚本?
最佳答案
试试这个代码,我在我的笔记本电脑上测试过,它运行良好!
import sys
import os
def mergeCSV(srcDir,destCSV):
with open(destCSV,'w') as destFile:
header=''
for root,dirs,files in os.walk(srcDir):
for f in files:
if f.endswith(".csv"):
with open(os.path.join(root,f),'r') as csvfile:
if header=='':
header=csvfile.readline()
destFile.write(header)
else:
csvfile.readline()
for line in csvfile:
destFile.write(line)
if __name__ == '__main__':
mergeCSV('D:/csv','D:/csv/merged.csv')
关于Python - 合并来自不同 .csv 文件的数据。合为一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17586573/