gpt4 book ai didi

python - 将多个 csv 文件合并为一个 csv 文件

转载 作者:行者123 更新时间:2023-12-01 00:55:06 24 4
gpt4 key购买 nike

我正在尝试将多个 csv 文件合并为一个,并尝试了多种方法,但我很挣扎。

我从多个csv文件导入数据,当我将它们一起编译成一个csv文件时,似乎前几行填充得很好,但随后它开始在行之间随机输入可变数量的空格,它永远不会完成填写组合的 csv 文件,它似乎只是不断地添加信息,这对我来说没有意义,因为我正在尝试编译有限数量的数据。

我已经尝试为文件编写关闭语句,但仍然得到相同的结果,我指定的组合 csv 文件永远不会停止获取数据,并且它将在整个文件中随机间隔数据 - 我只想要一个正常编译的 csv 。

我的代码有错误吗?有什么解释可以解释为什么我的 csv 文件会这样吗?

csv_file_list = glob.glob(Dir + '/*.csv') #returns the file list
print (csv_file_list)
with open(Avg_Dir + '.csv','w') as f:
wf = csv.writer(f, delimiter = ',')
print (f)
for files in csv_file_list:
rd = csv.reader(open(files,'r'),delimiter = ',')
for row in rd:
print (row)
wf.writerow(row)

最佳答案

你的代码对我有用。

或者,您可以按如下方式合并文件:

csv_file_list = glob.glob(Dir + '/*.csv')
with open(Avg_Dir + '.csv','w') as wf:
for file in csv_file_list:
with open(file) as rf:
for line in rf:
if line.strip(): # if line is not empty
if not line.endswith("\n"):
line+="\n"
wf.write(line)

或者,如果文件不太大,您可以一次读取每个文件。但在这种情况下,所有空行和标题都将被复制:

csv_file_list = glob.glob(Dir + '/*.csv')
with open(Avg_Dir + '.csv','w') as wf:
for file in csv_file_list:
with open(file) as rf:
wf.write(rf.read().strip()+"\n")

关于python - 将多个 csv 文件合并为一个 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56294461/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com