Jupyter加载较大csv文件的时候总是死机,不升级内存的前提下有啥解决方法吗
两百多万行7列照理文件不应该太大,即使是6G的内存也足够了啊,你这个CSV的文件尺寸到底有多大?还有就是,试试看不要用jupyter,直接用python程序跑,规避是前者问题的可能。
假设csv的确很大,小内存处理有些吃力了,其实pandas本身有很多技巧可以考虑的,可以降低对内存的需求。
第一个,只读取需要的列,用read_csv函数里面的usecols参数,指定读取的列。这样读取的dataframe就可以小一点。
【Jupyter加载较大csv文件的时候总是死机,不升级内存的前提下有啥解决方法吗】 第二个,设置好每一列的格式,用参数dtype。这样可以避免一堆的object列,毕竟同样一个数字,用int64可比object节省地方。
第三个,其实pandas的read_csv自带分批加载的功能,用的是chunksize函数,设置了之后就返回一个迭代器,可以用for来逐个提取计算。使用说明可以看官网的说明:IO Tools (Text, CSV, HDF5, …)
■网友
用pandas read_csv, 设置chunk_size. https://www.google.com/amp/cmdlinetips.com/2018/01/how-to-load-a-massive-file-as-small-chunks-in-pandas/amp/
■网友
当成普通文本文件,读一行处理一行。
请看
黄哥:python生成器处理大文本文件的代码
还有一个方法,请看以前我写的文章
黄哥:用Dask 处理csv大文件。
推荐阅读
- 应届生选一个比较大的互联网公司还是一个小但赚钱的游戏公司好
- |心酸!小男孩跪地守候的妈妈去世了
- 为啥网速明明很快,但看视频都是看多少加载多少,而不是一次性全给加载完呢
- 奥迪|奥迪e-tron系列或将更名 “Q6 e-tron”可能性较大
- 老侯说车|国产汽车越来越喜欢使用较大的轮胎,难道仅仅是为了好看吗?
- 目前微信公众平台做得比较好,比较大的,成功的案例有哪些
- 怀女宝|B超单上若有这些信息,或许“怀女宝”的可能比较大孕妇产检时
- 趣头条|2020年前10月紧凑型SUV销量排行盘点,国产自主车型优势较大
- |男子因情感纠纷遭“浸猪笼” 警方回应:抓获一嫌犯
- 民房起火|民房起火 老人多年积蓄被烧成焦炭
