【发布时间】:2022-02-08 17:09:57
【问题描述】:
我正在尝试使用 Pandas 'read_csv' 方法解析一个巨大的 csv 文件(大约 5000 万行)。
下面是我正在使用的代码sn-p:
df_chunk = pd.read_csv(db_export_file, delimiter='~!#', engine='python', header=None, keep_default_na=False, na_values=[''], chunksize=10 ** 6, iterator=True)
Therafter 使用pd.concat 方法我得到了用于进一步处理的整套数据帧。
一切正常,从该 csv 文件读取操作需要将近 6 分钟来创建数据帧。
我的问题是,有没有其他方法可以使用相同的模块和方法使这个过程更快?
以下是以 csv 文件形式呈现的示例数据
155487~!#-64721487465~!#A1_NUM~!#1.000
155487~!#-45875722734~!#A32_ENG~!#This is a good facility
458448~!#-14588001153~!#T12_Timing~!#23-02-2015 14:50:30
458448~!#-10741214586~!#Q2_56!#
提前致谢
【问题讨论】:
-
我们需要更多信息,例如列的类型是什么,是否有重复的字符串数据,是否正确键入(例如,没有混合的数字和非数字数据)等。向我们展示一个示例会有所帮助。
-
我认为你最好的选择是split the csv,然后使用多处理读取所有块:stackoverflow.com/questions/36587211/…
-
您好,我更新了一个示例文件数据,实际上是混合类型。