当前位置: 首页 > 知识库问答 >
问题:

如何阅读大型csv(20G)[副本]

唐阳飙
2023-03-14

我是Python的新用户,我的问题是:

sn_fx   sn_tx   dur
5129789 3310325 2
5129789 5144184 1
5129789 5144184 1
5129789 5144184 1
5129789 5144184 1
5129789 6302346 4
5129789 6302346 0
file='cmct_0430x.csv'
for line in file.xreadlines():
    pass

共有1个答案

卞经业
2023-03-14

你应该用熊猫。并以适当大小的chunks(已处理的行数)读取csv。然后使用concat获取所有块。

from pandas import *

tp = read_csv('cmct_0430x.csv', iterator=True, chunksize=1000)
df = concat(tp, ignore_index=True) 

熊猫:Read_csv

您得到了内存错误,因为您正在处理整个csv的时间大于您的主内存的大小。试着把它分成块,然后再进行处理。

 类似资料:
  • 我不知道如何阅读此代码。if/else 语句的等效代码是什么?

  • 如何用Python阅读pdf?我知道一种将其转换为文本的方法,但我想直接从PDF阅读内容。 谁能解释一下python中的哪个模块最适合pdf提取

  • 由于多值字段和维度使用报价,csv读取器读取此文件失败。我的函数(上面代码中的函数f)如果那个逗号在属于同一字段的两个数据之间,就用分号代替逗号,如果那个引号是维度的东西,就用'inch'代替。

  • 问题内容: 我想从CSV读取巨大的数据,包含大约500,000行。我正在使用OpenCSV库。我的代码是这样的 多达200,000条记录,数据被读入User Bean对象列表。但是对于更多的数据,我得到了 我在“ eclipse.ini”文件中有此内存设置 我正在考虑将大文件拆分为单独文件并再次读取这些文件的解决方案,我认为这是一个冗长的解决方案。 还有什么其他方法可以避免OutOfMemoryE

  • 问题内容: 我有一个UTF-16 CSV文件,我必须阅读。Python csv模块似乎不支持UTF-16。 我正在使用python 2.7.2。我需要解析的CSV文件很大,要运行几个GB的数据。 回答以下约翰·马钦(John Machin)的问题 使用仅包含abc作为内容的test.csv输出 我认为csv文件是在美国Windows机器上创建的。我正在使用Mac OSX Lion。 如果我使用ph

  • 欢迎来到Go的世界,让我们开始探索吧! Go是一种新的语言,一种并发的、带垃圾回收的、快速编译的语言。它具有以下特点: 它可以在一台计算机上用几秒钟的时间编译一个大型的Go程序。 Go为软件构造提供了一种模型,它使依赖分析更加容易,且避免了大部分C风格include文件与库的开头。 Go是静态类型的语言,它的类型系统没有层级。因此用户不需要在定义类型之间的关系上花费时间,这样感觉起来比典型的面向对