我需要在python中使用相同的列标题连接csv文件。具有以下文件名的csv文件应按顺序连接,如下所示(文件名的升序):
AB201602.csv
AB201603.csv
AB201604.csv
AB201605.csv
AB201606.csv
AB201607.csv
AB201608.csv
AB201610.csv
AB201612.csv
我想仅从第一个文件中保留列标题。任何的想法?
我尝试使用下面的代码,它将csv文件与随机文件名组合在一起,并截断了列标题名称的一半。感谢
csvfiles = glob.glob('/home/c/*.csv')
wf = csv.writer(open('/home/c/output.csv','wb'),delimiter = ',')
for files in csvfiles:
rd = csv.reader(open(files,'r'),delimiter = ',')
rd.next()
for row in rd:
print(row)
wf.writerow(row)
答案 0 :(得分:2)
使用@Gokul评论和熊猫。
import pandas as pd
import glob
csvfiles = sorted(glob.glob('/home/c/*.csv'))
df = pd.DataFrame()
for files in csvfiles:
df = df.append(pd.read_csv(files))
df.to_csv('newfile.csv')