当前位置: 移动技术网 > IT编程>脚本编程>Python > 通过Pandas读取大文件的实例

通过Pandas读取大文件的实例

2018年08月19日  | 移动技术网IT编程  | 我要评论

王中山古筝曲集,厦门交通银行,地下判官

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

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读取大文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持移动技术网。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网