100GB 數據在筆記本上怎麼用python分析了?


100GB 數據在筆記本上怎麼用python分析了?

許多組織都想盡可能多地收集和利用數據,從而改進業務、增加收入
和提升影響力。因此,數據科學家們要面對 50GB,甚至 500GB 數據集的
場景變得越來越普遍。
目前,這些數據集處理起來有點麻煩。就大小而言,它們可以放進你 筆記本電腦的硬盤裡,但卻無法裝入內存。所以,僅僅打開和查看它們就 很困難,更何況進一步探索和分析。 處理這樣的數據集時,一般有 3 種策略。 第 1 種是對數據進行子抽樣,但它有一個明顯缺點:可能因忽略部分 數據而錯失關鍵信息,甚至誤解數據表達的含義。 第 2 種是使用分佈式計算。雖然在某些情況下這是一種有效的方法, 但是管理和維護集群會帶來巨大開銷。想象一下,要為一個剛超出內存大 小、大概 30-50GB 的數據集就建立一套集群,對我來說,這似乎有點“用 力過猛”。 第 3 種是租用一個內存大小等同於數據集大小的強大雲服務實例,例 如,AWS 提供了 TB 級內存的雲服務實例。但這種情況還需要管理雲數 據存儲空間,並且在每次實例啟動時都要等待數據從存儲空間傳輸到實例。 另外還需要應對數據上雲的合規性問題,以及忍受在遠程機器上工作帶來 的不便。更別提成本,雖然開始會比較低,但隨著時間推移會快速上漲。 本文向你展示一種全新方法,它更快、更安全,可以更方便、全面地 對幾乎任意大小的數據集進行數據科學研究,只要這個數據集能裝進你的 筆記本電腦、臺式機或者服務器的硬盤裡就行。

Vaex

Vaex 是一個開源的 DataFrame 庫,對於和你硬盤空間一樣大小的表 格數據集,它可以有效進行可視化、探索、分析乃至實踐機器學習。 為實現這些功能,Vaex 採用內存映射、高效的核外算法和延遲計算 等概念。所有這些都封裝為類 Pandas 的 API,因此,任何人都能快速上手。10 億級出租車的數據分析 為闡述這些概念,我們對一個遠超出一般筆記本電腦內存大小的數據 集進行簡單地探索分析。 這裡,我們使用 New York City(NYC) Taxi 數據集,它包含了標誌性 的黃色出租車 2009 年到 2015 年間超過十億次的出租車行程信息。 數據從網站下載,提供 CSV 格式。完整分析可以單獨查看這個Jupyter notebook。

數據科學快樂!Vaex 官方網站: https://vaex.io/。


分享到:


相關文章: