通过Pandas读取大文件的实例

yipeiwu_com5年前Python基础

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

import pandas as pd
f = open('E:/学习相关/Python/数据样例/用户侧数据/test数据.csv')
reader = pd.read_csv(f, sep=',', iterator=True)
loop = True
chunkSize = 100000
chunks = []
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表示重建索引。

以上这篇通过Pandas读取大文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pycharm安装和首次使用教程

pycharm安装和首次使用教程

PyCharm 是我用过的python编辑器中,比较顺手的一个。而且可以跨平台,在macos和windows下面都可以用,这点比较好。是python现在最好用的编辑器,没有之一。 首先预...

机器学习python实战之手写数字识别

机器学习python实战之手写数字识别

看了上一篇内容之后,相信对K近邻算法有了一个清晰的认识,今天的内容——手写数字识别是对上一篇内容的延续,这里也是为了自己能更熟练的掌握k-NN算法。 我们有大约2000个训练样本和100...

python 实现删除文件或文件夹实例详解

python 实现删除文件或文件夹           最近自己学习Python 的知识,自己学...

详解Python_shutil模块

import shutil 高级的文件,文件夹,压缩包的处理模块,也主要用于文件的拷贝 shutil.copyfileobj(fsrc,fdst[,length]):  将文件的内容拷...

python安装oracle扩展及数据库连接方法

本文实例讲述了python安装oracle扩展及数据库连接方法。分享给大家供大家参考,具体如下: 下载: cx_Oracle下载地址:http://cx-oracle.sourcefor...