pandas 分块读取大规模数据

pandas 分块读取大规模数据

__author__ = '未昔/angelfate'
__date__ = '2019/7/2 1:30'
# -*- coding: utf-8 -*-

path = r'E:\python\Study\BiGData\new_data.csv'
@timeit
def test_1():
    print('test_1')
    df = pd.read_csv(path, engine='python', encoding='gbk')


@timeit
def test_2():
    print('test_2')
    df = pd.read_csv(path, engine='python', encoding='gbk', iterator=True)  # 分块,每一块是一个chunk,之后将chunk进行拼接;

    loop = True
    chunkSize = 10000
    chunks = []
    while loop:
        try:
            chunk = df.get_chunk(chunkSize)
            chunks.append(chunk)
        except StopIteration:
            loop = False
            print("Iteration is stopped.")
    df = pd.concat(chunks, ignore_index=True)

test_1()
test_2()

这个是分别读取 1w 条数据的一个 csv 文件,所用的时间对比:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值