我想知道我是否可以合并多个CSV文件,但我需要从给定的行开始,在第一列添加文件名。目前,我一直在使用以下代码:
import os
import glob
import pandas as pd
os.chdir(Path)
extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
#combine all files in the list
combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
#export to csv
combined_csv.to_csv( "combined.csv", index=False, encoding='utf-8-sig')
现在我正在处理一些格式不好的文件,我需要从第3行开始连接,并在第一列添加文件名,但不确定如何实现这一点
(首先,您不需要使用
glob.glob
来理解列表-它会返回一个列表。)对于仅从第3行开始连接所有文件的请求-这应该相当简单。只需将
.loc[3:]
添加到read_csv
命令:但是如果你想做更多的修改,你应该使用一个普通的for循环,以一种可读的方式完成所有的事情,并在之后对所有事情进行concat,比如:
相关问题 更多 >
编程相关推荐