如何使用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 = 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) # 輸出如下 # Saving file : ./small_0-500.csv, data size : 500 # Saving file : ./small_500-1000.csv, data size : 500
代碼就這麼簡單。
2. 再多瞭解一點兒
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("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,career 0,peter,teacher 1,rose,engineer 2,joe,doctor
2.6 關於pandas
pandas是一款快速、強大、靈活且易於使用的開源數據分析和操作工具,建立在Python編程語言之上。用瞭都說好。
3. 小結
其實pandas處理csv文件的方法還有很多,功能非常強大,僅僅是數據切分,就有很多方法,有需要的時候,可以去看看文檔。
到此這篇關於如何使用pandas對超大csv文件進行快速拆分的文章就介紹到這瞭,更多相關pandas拆分csv文件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- python中pandas讀取csv文件時如何省去csv.reader()操作指定列步驟
- python數學建模之三大模型與十大常用算法詳情
- Python數據分析23種Pandas核心操作方法總結
- pandas數據分組groupby()和統計函數agg()的使用
- Python遍歷目錄下文件、讀取、千萬條數據合並詳情