博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
通过Pandas读取大文件
阅读量:4211 次
发布时间:2019-05-26

本文共 830 字,大约阅读时间需要 2 分钟。

当数据文件过大时,由于计算机内存有限,需要对大文件进行分块读取:

import pandas as pdf = open('E:/学习相关/Python/数据样例/用户侧数据/test数据.csv')reader = pd.read_csv(f, sep=',', iterator=True)loop = TruechunkSize = 100000chunks = []while loop:    try:        chunk = reader.get_chunk(chunkSize)        chunks.append(chunk)    except StopIteration:        loop = False        print("Iteration is stopped.")df = pd.concat(chunks, ignore_index=True)print(df)

read_csv()函数的iterator参数等于True时,表示返回一个TextParser以便逐块读取文件;

chunkSize表示文件块的大小,用于迭代;

TextParser类的get_chunk方法用于读取任意大小的文件块;

StopIteration的异常表示在循环对象穷尽所有元素时报错;

concat()函数用于将数据做轴向连接:

pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, Verify_integrity=False)

常用参数:

objs:Series,DataFrame或者是Panel构成的序列list;
axis:需要合并连接的轴,0是行,1是列;
join:连接的参数,inner或outer;
ignore=True表示重建索引。

转载地址:http://vggli.baihongyu.com/

你可能感兴趣的文章
JAVA实现文件树
查看>>
linux -8 Linux磁盘与文件系统的管理
查看>>
linux 9 -文件系统的压缩与打包 -dump
查看>>
PHP在变量前面加&是什么意思?
查看>>
ebay api - GetUserDisputes 函数
查看>>
ebay api GetMyMessages 函数
查看>>
php加速器 - zendopcache
查看>>
手动12 - 安装php加速器 Zend OPcache
查看>>
set theme -yii2
查看>>
yii2 - 模块(modules)的view 映射到theme里面
查看>>
yii2 - controller
查看>>
yii2 - 增加actions
查看>>
php图像处理函数大全(缩放、剪裁、缩放、翻转、旋转、透明、锐化的实例总结)
查看>>
magento url中 uenc 一坨编码 base64
查看>>
强大的jQuery焦点图无缝滚动走马灯特效插件cxScroll
查看>>
Yii2.0 数据库查询
查看>>
yii2 db 操作
查看>>
mongodb group 有条件的过滤组合个数。
查看>>
关于mongodb的 数组分组 array group
查看>>
MongoDB新的数据统计框架介绍
查看>>