通过Pandas读取大文件的实例

yipeiwu_com6年前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设计】。

相关文章

python Django批量导入不重复数据

本文为大家分享了python Django批量导入不重复数据的实现代码,供大家参考,具体内容如下 程序如下: #coding:utf-8 import os os.enviro...

浅谈python中copy和deepcopy中的区别

在下是个编程爱好者,最近将魔爪伸向了Python编程。。。。。遇到copy和deepcopy感到很困惑,现在针对这两个方法进行区分,一种是浅复制(copy),一种是深度复制(deepco...

python optparse模块使用实例

使用命令行时,如果要添加选项的话,python 2.3里新增加了一个模块叫optparse,也是专门来处理命令行选项的。 复制代码 代码如下: from optparse import...

python使用for循环计算0-100的整数的和方法

如下所示: #创建一个变量初始化为0 sum = 0 #调用range()函数创建一个有序数列并通过for循环遍历数列 for n in range (101) : #将遍历的数列...

Python 简单计算要求形状面积的实例

Python 简单计算要求形状面积的实例

有个Q友问怎么写个程序能按照要求输入,再输出对应形状的面积? 我大概写了几行,没有考虑输出异常,重点想记录下 int 的接收,如下图 知识点就两个 1, 长方形面积 & 三角形面积,因为...