将数百个数据文件合并到一个主数据帧中的有效方法是什么?

2024-09-30 06:17:36 发布

您现在位置:Python中文网/ 问答频道 /正文

如标题所示,我有800多个数据文件(全部为.csv格式)(每个文件大小约为0-5MB,每个文件包含10列,第一行为标题),我希望将所有这些文件合并到一个数据帧中。我可以使用Pandas数据帧逐个添加它们,但这非常耗时。你知道吗

有没有办法做得更快?你知道吗

我的代码:

fname = "CRANlogs/" + ffiles[0]
df = pandas.read_csv(fname,header=0)

for i in range(807)[1:]:
    print(i)
    fname = "CRANlogs/" + ffiles[i]
    temp = pandas.read_csv(fname,header=0)
    df = pandas.merge(df,temp,how="outer")

Tags: 文件csv数据标题pandasdfread数据文件
2条回答

你需要每一个的标题吗?如果不是,那么将它们全部转换为numpy数组,然后使用numpy.append文件功能,然后将文件转换回csv文件。你知道吗

我通常创建一个帧列表,然后使用pandas concat()

frames = [] 

for i in range(807):    
    fname = "CRANlogs/" + ffiles[i]
    temp = pandas.read_csv(fname,header=0)
    frames.append(temp)

#and now concat
df = pd.concat(frames)

相关问题 更多 >

    热门问题