我认为还有更多问题:
我删除import csv
和import numpy as np
,因为在这个演示,他们没有使用(但也许他们缺少的,线,因此他们可以导入)
我创建了所有数据帧的列表dfs
,其中附加了数据帧dfs.append(df)
.然后我使用函数concat
将此列表加入到最终数据帧.
在函数中read_csv
我添加了参数header=None
,因为主要问题是read_csv
将第一行读为header
.
在函数中to_csv
我添加了header=None
用于省略标题的参数.
我将文件夹添加test
到最终目标文件,因为如果使用函数,glob.glob("*.csv")
您应该将输出文件作为输入文件读取.
解:
import glob import pandas as pd all_data = pd.DataFrame() #initializes DF which will hold aggregated csv files #list of all df dfs = [] for f in glob.glob("*.csv"): #for all csv files in pwd #add parameters to read_csv df = pd.read_csv(f, header=None) #create dataframe for reading current csv #print df dfs.append(df) #appends current csv to final DF all_data = pd.concat(dfs, ignore_index=True) print all_data # 0 1 2 #0 test1 test1 test1 #1 test1 test1 test1 #2 test1 test1 test1 #3 test2 test2 test2 #4 test2 test2 test2 #5 test2 test2 test2 all_data.to_csv("test/final.csv", index=None, header=None)
下一个解决方案类似.
我想补充的参数header=None
,以read_csv
和to_csv
,并添加参数ignore_index=True
来append
.
import glob import pandas as pd all_data = pd.DataFrame() #initializes DF which will hold aggregated csv files for f in glob.glob("*.csv"): #for all csv files in pwd df = pd.read_csv(f, header=None) #create dataframe for reading current csv all_data = all_data.append(df, ignore_index=True) #appends current csv to final DF print all_data # 0 1 2 #0 test1 test1 test1 #1 test1 test1 test1 #2 test1 test1 test1 #3 test2 test2 test2 #4 test2 test2 test2 #5 test2 test2 test2 all_data.to_csv("test/final.csv", index=None, header=None)