关于读取大型CSV文件出现内存爆掉的情况,以及解决方法。

data/inst/order_products__prior.csv,这个文件500多MB但是一开始我的python是32位,每次读取如果不指定chunksize直接回出现Memory Error的问题。

网上很多解决方法,几乎每个都试过,比如先指定chunksize然后得到一个TextFilereader类型,然后根据这个类型进行遍历,但是我发现这种方法我的循环结束不了,不太了解TextFilereader的使用方法。第二个是改虚拟内存,然后我发现每次运行我的内存占有不到80%就会直接终止,哪怕我把C/D盘的空间全部分配到虚存,还是一样的错误。

最后我快放弃的时候尝试了最后一个方法,重新下载python装一个64位的,哪怕以前的包都要重新下载。。然后我就重新下了,最后发现了一个简单的装包的途径,从pycharm的终端进行安装,最后我把之前的包全部重新下载了,就解决了。

附上装jieba,sklearn的代码

pip install scikit-learn
pip install jieba

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 读取大型CSV文件时,可以使用pandas库或者标准库中的csv模块。如果使用pandas库,可以使用read_csv函数来读取CSV文件,并将其转换为DataFrame对象。首先,使用pandas库的read_csv函数来读取CSV文件,指定文件路径、编码方式等参数。然后,可以使用astype函数将DataFrame对象中的数据类型转换为float32。\[1\]如果使用标准库中的csv模块,可以使用csv.reader或csv.DictReader来逐行读取CSV文件的内容。使用csv.reader时,需要使用open函数打开CSV文件,并将文件对象传递给csv.reader函数。然后,可以使用for循环遍历csv.reader对象的每一行内容并输出。\[3\]如果使用csv.DictReader,可以直接使用for循环遍历reader对象的每一行内容并输出。\[2\]这样可以逐行读取大型CSV文件,避免一次性读取整个文件导致内存溢出的问题。 #### 引用[.reference_title] - *1* [python csv文件数据写入读取(适用于超大数据量)](https://blog.csdn.net/qq7835144/article/details/88919624)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Python读取CSV文件的几种方法](https://blog.csdn.net/spx_0108/article/details/130706946)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值