2016-06-30 57 views
2

我想知道是否有一種方法或Python包可以讓我使用大型數據集,而無需將其寫入RAM中。在Python中使用硬盤而不是RAM

我還使用熊貓統計功能。

我需要對整個數據集的訪問,因爲許多統計功能需要整個數據集返回了可靠的結果。

我使用的PyDev(帶翻譯的Python 3.4)上LiClipse與Windows 10

+0

歡迎計算器。首先,你應該讀作[「我可以在這裏左右問什麼題目?」(http://stackoverflow.com/help/on-topic):「問題,要求我們建議還是找一本書,工具,軟件庫,教程或其他非現場資源不在話下「。嘗試在python,pandas等搜索內存映射。 –

+0

歡迎來到計算器。給我們更多關於你到底需要什麼或者接受答案的更多細節。 – SerialDev

回答

1

你可以選擇使用SframesDask對大數據集的支持,或選擇使用熊貓,以儘量減少讀取塊/迭代RAM使用情況。 也值得擁有看看blaze

讀入大塊:

chunksize = 10 ** 6 
for chunk in pd.read_csv(filename, chunksize=chunksize): 
process(chunk) 
+0

好的,謝謝,但現在的問題是不同的,與Dask我最小化了內存使用率,但現在我將使用熊貓統計功能和Dask我不能使用所有這些。我能怎麼做?非常感謝 –

0

如果你需要的是磁盤,你可以設置一個交換文件系統上的大容量的RAM內存的虛擬化。然後內核會根據需要自動交換頁面,使用啓發式方法來確定哪些頁面應該交換,哪些應該保留在磁盤上。

+0

謝謝,你的建議也是有用的,在Windows中有一個簡單的方法來做到這一點?非常感謝你 –

相關問題