使用pandas来处理文件的时候,经常会遇到大文件,而有时候我们只想要读取其中的一部分数据或对文件进行逐块处理。
data.csv
1、读取文件中前部分
通过nrows参数,来设置读取文件的前多少行,nrows是一个大于等于0的整数。
data = pd.read_csv("data.csv",nrows=5)
print(data)
'''
a b c
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11
4 12 13 14
'''
2、逐块读取文件
#设置chunksize参数,来控制每次迭代数据的大小
chunker = pd.read_csv("data.csv",chunksize=5)
for piece in chunker:
print(type(piece))
#<class 'pandas.core.frame.DataFrame'>
print(len(piece))
#5
如果,将上面的chunksize参数设置为8,那么第一次迭代的时候包含8条数据,第二次迭代就只能包含2条数据了。其实,每次进行迭代的时候还是一个DataFrame类型的数据结构。