我的数据集中在2009年到2018年的航班延误和取消情况。以下是需要考虑的要点:
import pandas as pd
import numpy as np
import os, sys
import glob
os.chdir('c:\\folder'
extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
combined_airline_csv = pd.concat([pd.read_csv(f) for f in all_filenames])
combined_airline_csv.to_csv('combined_airline_csv.csv', index =False, encoding = 'utf-8-sig')
运行
的数组分配43.3MiB
我假定我的文件太大,需要在虚拟机(即AWS)上运行。
有什么想法吗?
谢谢!
发布于 2021-01-25 21:05:19
这是how to merge 200 csv files in Python的副本。
因为您只想将它们合并到一个文件中,所以不需要同时将所有数据加载到dataframe中。因为它们都有相同的结构,所以我建议创建一个filewriter,然后用文件读取器打开每个文件,然后逐行写入数据(如果我们想要称之为流)。只是要小心,不要每次都复制标题,因为您只需要它们一次。熊猫根本不是完成这项任务的最佳工具:)
一般来说,这是一个典型的任务,也可以直接在命令行上轻松、甚至更快地完成。(代码取决于操作系统)
https://stackoverflow.com/questions/65892174
复制相似问题