如果你的电脑内存较小那么想在本地做一些事情是很有局限性的(哭丧脸),比如想拿一个kaggle上面的竞赛来练练手,你会发现多数训练数据集都是大几G或者几十G的,自己那小破电脑根本跑不起来。行,你有8000w条样本你牛逼,我就取400w条出来跑跑总行了吧(狡滑脸)。
下图是2015年kaggle上一个CTR预估比赛的数据集:
看到train了吧,原始数据集6个G,特征工程后得多大?那我就取400w出来train。为了节省时间和完整介绍分批读入数据的功能,这里以test数据集为例演示。其实就是使用pandas读取数据集时加入参数chunksize。
可以通过设置chunksize大小分批读入,也可以设置iterator=True后通过get_chunk选取任意行。
当然将分批读入的数据合并后就是整个数据集了。
ok了!
补充知识:用Pandas 处理大数据的3种超级方法
易上手, 文档丰富的Pandas 已经成为时下最火的数据处理库。此外,Pandas数据处理能力也一流。
其实无论你使用什么库,大量的数据处理起来往往回遇到新的挑战。
数据处理时,往往会遇到没有足够内存(RAM)这个硬件问题。 企业往往需要能够存够数百, 乃至数千 的GB 数据。