利用pandas对超大CSV文件进行快速拆分
我是本际云服务器推荐网的小编小本本,今天我要为大家介绍如何利用pandas对超大CSV文件进行快速拆分。

操作步骤
首先,我们需要安装pandas,可以使用以下命令:
pip install pandas
然后,我们就可以拆分大文件了,代码如下:
import pandas as pd
# 读取csv文件
df = pd.read_csv("../super_big.csv")
# 获取文件总行数
row_num = len(df)
# 确定每个小文件要包含的数据量
step = 400
for 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)
这段代码非常简单,首先我们读取了超大的csv文件,然后根据设定的每个小文件需要包含的数据量,将大文件划分成多个小文件进行处理。最后将每个小文件保存到磁盘上。
再多了解一点儿
除了以上介绍的操作步骤,我们还可以用pandas进行更多的数据处理。
2.1 pandas读取csv文件后,返回的是什么类型?
import pandas
df = 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("YOUR_CSV_FILE.csv")
df.to_csv(fname, index=None)
需要注意的是,index默认是True,意思是保存行索引。
2.6 关于pandas
pandas是一款快速、强大、灵活且易于使用的开源数据分析和操作工具,建立在Python编程语言之上。
小结
其实pandas处理csv文件的方法还有很多,功能非常强大,仅仅是数据切分,就有很多方法,有需要的时候,可以去看看文档。
综上所述,本文介绍了如何利用pandas对超大CSV文件进行快速拆分,希望可以给各位读者带来帮助。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/7185.html
