2016-11-08 36 views
1

我試圖應用機器學習(Python與scikit學習)存儲在一個大約2.2 GB的CSV文件中的大數據。緩存CSV讀取數據與熊貓多次運行

由於這是一個部分經驗的過程,我需要多次運行腳本,導致pandas.read_csv()函數一遍又一遍地被調用,這需要很多時間。

顯然,這非常耗時,所以我想必須有一種方法來使讀取數據的過程更快 - 例如以不同格式存儲它或以某種方式緩存它。

解決方案中的代碼示例非常棒!

+1

我想你需要['hdf5'(HTTP://pandas.pydata .org/pandas-docs/stable/io.html#io-hdf5) – jezrael

+0

你確實可以嘗試以不同的格式存儲數據,例如[bcolz](http://bcolz.blosc.org/en/latest/ intro.html)。但是,您可能還想考慮更改您的流程。例如,您可以嘗試讓腳本在單次運行中完成更多的「經驗過程」,或者在整個數據集上嘗試整個過程之前,您可以使用數據的一個子集一段時間。 – BrenBarn

+0

你要存儲什麼樣的數據(哪些dtypes)?它只是數字數據還是還有'datetime'和/或字符串,類別等? – MaxU

回答

2

我會在下面的格式一家商店已經被解析的DF:

他們都是非常快的

PS知道你要什麼存儲數據的種類(什麼dtypes)是很重要的,因爲它可能會影響速度大大

+0

這些適合2.2GIG文件嗎? – bluesummers

+0

@bluesummers,絕對!一旦我[比較](http://stackoverflow.com/a/37012035/5741205),但那時羽毛不適用於Windows。現在我肯定會考慮這種比較羽毛 – MaxU

+0

我沒有看到to_feather方法。我將如何儲存羽毛? – piRSquared