當(dāng)今的數(shù)據(jù)集越來(lái)越大,臺(tái)式機(jī)的內(nèi)存甚至都裝不下,更不用說(shuō)你的筆記本電腦了,盡管如此,在大數(shù)據(jù)時(shí)代,我們總是避免不了要使用大數(shù)據(jù)集,于是Vaex誕生了。
什么是Vaex?
Vaex是一個(gè)高性能Python庫(kù),可以可視化和探索大型表格數(shù)據(jù)集,它可以在 N 維網(wǎng)格上計(jì)算每秒超過(guò)十億(10^9)個(gè)對(duì)象 / 行的統(tǒng)計(jì)信息,例如均值、總和、計(jì)數(shù)、標(biāo)準(zhǔn)差等, 磁盤上大小超過(guò)100GB的數(shù)據(jù),用Vaex只需要0.052秒就可以打開。
使用直方圖、密度圖和三維體繪制完成可視化,從而可以交互式探索大數(shù)據(jù)。Vaex 使用內(nèi)存映射、零內(nèi)存復(fù)制策略獲得最佳性能(不浪費(fèi)內(nèi)存)。
Vaex具有以下功能特性:
基于Python數(shù)據(jù)科學(xué)站(例如Panda、Scikit-Learn、arrow、xgboost、lightgbm),標(biāo)準(zhǔn)API易于采用。為Jupyter環(huán)境量身定制。
電腦運(yùn)算,結(jié)合了內(nèi)存映射,復(fù)雜的表達(dá)系統(tǒng)和快速核外算法。有效地可視化和探索大型數(shù)據(jù)集,并在一臺(tái)機(jī)器上構(gòu)建機(jī)器學(xué)習(xí)模型。
基準(zhǔn)測(cè)試,每秒可視化10億個(gè)樣本。與標(biāo)準(zhǔn)實(shí)現(xiàn)相比,PCA轉(zhuǎn)換速度提高了10倍,可在2分鐘內(nèi)處理10億個(gè)樣本。完全超出核心。
高效
Vaex不僅僅是Panda的替代品。盡管在執(zhí)行諸如的表達(dá)式時(shí),它具有類似于panda的API用于列訪問(wèn)np.sqrt(ds.x**2 + ds.y**2),但不會(huì)進(jìn)行任何計(jì)算。而是創(chuàng)建一個(gè)vaex表達(dá)式對(duì)象,并在打印輸出時(shí)顯示一些預(yù)覽值。
使用表達(dá)式系統(tǒng),vaex僅在需要時(shí)執(zhí)行計(jì)算。同樣,數(shù)據(jù)也不必是本地的:表達(dá)式可以通過(guò)發(fā)送的方式,統(tǒng)計(jì)信息可以遠(yuǎn)程計(jì)算,這是vaex-server程序包提供的。
虛擬列
我們還可以將表達(dá)式添加到DataFrame中,從而生成虛擬列。虛擬列的行為類似于常規(guī)列,但不占用任何內(nèi)存。Vaex在實(shí)列和虛列之間沒(méi)有區(qū)別,
如果表達(dá)式在運(yùn)行時(shí)真的很復(fù)雜怎么辦?通過(guò)使用Pythran或Numba,我們可以使用手動(dòng)實(shí)時(shí)(JIT)編譯來(lái)優(yōu)化計(jì)算。
遠(yuǎn)程數(shù)據(jù)幀甚至支持JIT版本的表達(dá)式,擔(dān)心RAM不夠?你還可以選擇以RAM為代價(jià)擠出額外的性能。
可視化
進(jìn)行有意義的繪圖和可視化是了解數(shù)據(jù)的最佳方法。。但是,當(dāng)你的DataFrame包含10億行時(shí),制作標(biāo)準(zhǔn)散點(diǎn)圖不僅會(huì)花費(fèi)很長(zhǎng)時(shí)間,而且會(huì)導(dǎo)致毫無(wú)意義且難以理解的可視化。
讓我們看看這些想法的一些實(shí)際例子。我們可以使用直方圖可視化單個(gè)列的內(nèi)容。
可以將其擴(kuò)展為兩個(gè)維度,從而生成熱圖。我們可以像典型的熱圖那樣簡(jiǎn)單地計(jì)算落入每個(gè)樣本中,而不是計(jì)算平均值,取總和的對(duì)數(shù)或幾乎任何自定義統(tǒng)計(jì)量。
我們甚至可以使用ipyvolume進(jìn)行3維體積渲染。
原文標(biāo)題:0.052秒打開100GB數(shù)據(jù)!這個(gè)Python開源庫(kù)牛X了
文章出處:【微信公眾號(hào):人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
責(zé)任編輯:haq
-
python
+關(guān)注
關(guān)注
56文章
4826瀏覽量
86552 -
大數(shù)據(jù)
+關(guān)注
關(guān)注
64文章
8957瀏覽量
139958
原文標(biāo)題:0.052秒打開100GB數(shù)據(jù)!這個(gè)Python開源庫(kù)牛X了
文章出處:【微信號(hào):TheBigData1024,微信公眾號(hào):人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)庫(kù)

適用于Oracle的Python連接器:可訪問(wèn)托管以及非托管的數(shù)據(jù)庫(kù)
基于 400Gbps 100G-PAM4 OSFP 和 QSFP112 的線纜和光模塊之IB網(wǎng)絡(luò)連接

鴻蒙原生頁(yè)面高性能解決方案上線OpenHarmony社區(qū) 助力打造高性能原生應(yīng)用
pga900用GPIO輸出測(cè)試,一打開中斷程序就飛了,為什么?
使用DAC8771EVM的過(guò)程中,一打開軟件,點(diǎn)擊HW_RESET之后Alarm指示燈就亮起了是怎么回事?
數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—通過(guò)拼接數(shù)據(jù)庫(kù)碎片恢復(fù)SQLserver數(shù)據(jù)庫(kù)

Python庫(kù)解析:通過(guò)庫(kù)實(shí)現(xiàn)代理請(qǐng)求與數(shù)據(jù)抓取
華為云 RDS for MySQL 數(shù)據(jù)庫(kù)助力秒音數(shù)智化轉(zhuǎn)型,引領(lǐng)社交電商新風(fēng)尚
oracle數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)打開報(bào)錯(cuò)的數(shù)據(jù)恢復(fù)案例

數(shù)據(jù)庫(kù)數(shù)據(jù)恢復(fù)—Oracle數(shù)據(jù)庫(kù)文件system01.dbf損壞的數(shù)據(jù)恢復(fù)案例

評(píng)論