我有一個非常大的數據框保存爲gzip
文件。數據在保存之前還需要進行大量的操作。使用gzip數據框,我該如何讀取/解壓縮此行?
可以嘗試將整個gzip數據幀轉換爲文本格式,將其保存到變量中,解析/清除數據,然後通過pandas.read_csv()
另存爲.csv
文件。但是,這非常耗費內存。
我想讀/解壓縮由管線此文件中的行(因爲這將是最存儲器高效的解決方案,我想),解析這個(例如,具有正則表達式re
或者也許是pandas
溶液),然後保存在每行成熊貓數據框。
Python有一個gzip
庫這樣的:
with gzip.open('filename.gzip', 'rb') as input_file:
reader = reader(input_file, delimiter="\t")
data = [row for row in reader]
df = pd.DataFrame(data)
然而,這似乎所有的信息拖放到「讀者」變量,然後解析。一個人如何以更有效的方式做到這一點?
我應該使用不同的庫而不是gzip
?
我不知道如何在一個自動化的方式做到這一點。輸入gzip,將格式化的數據輸出到.csv(或其他類型)的文件中。 – JianguoHisiang
自動化符合我建議替換的範圍。這就是你放置邏輯的地方。我剛剛給了你一個例子,你寫出這行代碼,但是你可以用你需要的任何邏輯代替它 - 把它轉換爲CSV,不管。 –
我現在明白了 – JianguoHisiang