这篇文章主要介绍“怎么使用pandas对超大csv文件进行快速拆分”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用pandas对超大csv文件进行快速拆分”文章能帮助大家解决问题。
1. 操作步骤
1.1 安装pandas
pip install pandas
1.2 拆分大文件
import pandas as pd# 读取csv文件df = pd.read_csv("../super_big.csv")# 获取文件总行数row_num = len(df)# 确定每个小文件要包含的数据量step = 400for start in range(0, row_num, step): stop = start + step filename = "./small_{}-{}.csv".format(start, stop) d = df[start: stop] print("Saving file : " + filename + ", data size : " + str(len(d))) d.to_csv(fname, index=None)# 输出如下# Saving file : ./small_0-500.csv, data size : 500# Saving file : ./small_500-1000.csv, data size : 500
代码就这么简单。
2. 再多了解一点儿
2.1 pandas读取csv文件后,返回的是什么类型?
import pandasdf = pandas.read_csv('./super_big.csv')type(df)<class 'pandas.core.frame.DataFrame'>
2.2 如何从DataFrame中读取某一行呢?
# 返回第一行print(df.loc[0])# 返回第二行print(df.loc[1])
2.3 如何从DataFrame读取多行呢?
d = df[start: stop]
2.4 如何从DataFrame中读取某一列呢?
data = { "name": ["peter", "rose", "joe"], "career": ["teacher", "engineer", "doctor"]}df = pd.DataFrame(data)print(df["name"])#0 peter#1 rose#2 joe#Name: name, dtype: object
2.5 如何用pandas读写CSV文件?
df = pd.read_csv("YOUT_CSV_FILE.csv")df.to_csv(fname, index=None)
注意:index默认是True,意思是保存行索引,这时候需要一个例子。
data = { "name": ["peter", "rose", "joe"], "career": ["teacher", "engineer", "doctor"]}df = pd.DataFrame(data)df.to_csv("a.csv")# 文件内容如下,注意每行的开头自动添加了行索引,从0开始递增,name,career0,peter,teacher1,rose,engineer2,joe,doctor
关于“怎么使用pandas对超大csv文件进行快速拆分”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。