中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Koalas: 讓 pandas 開發(fā)者輕松過渡到 Apache Spark

2019-05-12    來源:raincent

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用

今年的 Spark + AI Summit 2019 databricks 開源了幾個重磅的項目,比如 Delta Lake,Koalas 等,Koalas 是一個新的開源項目,它增強(qiáng)了 PySpark 的 DataFrame API,使其與 pandas 兼容。

Python 數(shù)據(jù)科學(xué)在過去幾年中爆炸式增長,pandas 已成為生態(tài)系統(tǒng)的關(guān)鍵。 當(dāng)數(shù)據(jù)科學(xué)家拿到一個數(shù)據(jù)集時,他們會使用 pandas 進(jìn)行探索。 它是數(shù)據(jù)清洗和分析的終極工具。 事實上,pandas 的 read_csv 函數(shù)通常是學(xué)生在數(shù)據(jù)科學(xué)旅程中的第一個命令。

那么這么用的問題是什么呢? pandas 不能很好地適應(yīng)大數(shù)據(jù),它專為單機(jī)處理小型數(shù)據(jù)集而設(shè)計的。另一方面,Apache Spark 已成為大數(shù)據(jù) workloads 的事實標(biāo)準(zhǔn)。今天,許多數(shù)據(jù)科學(xué)家將 pandas 用于課程作業(yè),個人業(yè)余項目(pet projects)和小型數(shù)據(jù)任務(wù),但是當(dāng)他們使用非常大的數(shù)據(jù)集時,他們必須遷移到 PySpark 以便可以利用 Spark,或者對其數(shù)據(jù)進(jìn)行下采樣,以便他們可以使用 pandas。

現(xiàn)在有了 Koalas,數(shù)據(jù)科學(xué)家可以從單機(jī)過渡到分布式環(huán)境,而無需學(xué)習(xí)新的框架。 正如您在下面所看到的,只需將一個包替換為另一個包,就可以使用 Koalas 在 Spark 上擴(kuò)展我們的 pandas 代碼。

 

 

pandas 作為 Python 數(shù)據(jù)科學(xué)的標(biāo)準(zhǔn)詞匯

隨著 Python 成為數(shù)據(jù)科學(xué)的主要語言,社區(qū)基于最重要的庫構(gòu)建了一些詞匯表,包括 pandas,matplotlib 和 numpy。 當(dāng)數(shù)據(jù)科學(xué)家使用這些庫時,他們可以充分表達(dá)他們的想法,并根據(jù)這個想法得出結(jié)論。 他們可以概念化某些東西并立即執(zhí)行。

但是當(dāng)他們不得不使用他們詞匯表之外的庫時,他們會遇到許多問題,他們每隔幾分鐘檢查一次 StackOverflow,并且必須中斷他們的工作流程才能使他們的代碼工作。 盡管 PySpark 使用起來很簡單并且在很多方面類似于 pandas,但他們?nèi)匀恍枰獙W(xué)習(xí)不同的詞匯。

在 Databricks,我們相信 Spark 上的 pandas 將大大提高數(shù)據(jù)科學(xué)家和數(shù)據(jù)驅(qū)動型組織的工作效率,原因如下:

Koalas 無需決定是否對給定的數(shù)據(jù)集使用 pandas 或 PySpark

對于最初用 pandas 編寫的單機(jī)程序,Koalas 允許數(shù)據(jù)科學(xué)家通過 pandas 和 Koalas 的輕松切換來擴(kuò)展在 Spark 上的代碼;

Koalas 為組織中的更多數(shù)據(jù)科學(xué)家解鎖大數(shù)據(jù),因為他們不再需要學(xué)習(xí) PySpark 來利用 Spark;

下面我們展示了兩個簡單而強(qiáng)大的 pandas 方法示例,這些方法可以直接在 Spark with Koalas 上運行。

具有分類變量的特征工程

數(shù)據(jù)科學(xué)家在構(gòu)建 ML 模型時經(jīng)常會遇到分類變量。 一種流行的技術(shù)是將分類變量編碼為虛擬變量。 在下面的示例中,有幾個分類變量,包括呼叫類型,鄰域和單元類型。 pandas 的get_dummies 方法是一種方便的方法。 下面我們將展示如何使用 pandas:

 

 

原始的 DataFrame

 

 

如果想及時了解Spark、Hadoop或者Hbase相關(guān)的文章,歡迎關(guān)注微信公眾號:iteblog_hadoop

變換后的 DataFrame

 

 

如果想及時了解Spark、Hadoop或者Hbase相關(guān)的文章,歡迎關(guān)注微信公眾號:iteblog_hadoop

有了 Koalas 之后,我們可以通過一些調(diào)整在 Spark 上做到這一點:

 

 

帶時間戳的算術(shù)

數(shù)據(jù)科學(xué)家一直使用時間戳,但正確處理它們可能會變得非常困難。pandas 提供了一個優(yōu)雅的解決方案。 假設(shè)您有一個日期的 DataFrame:

 

 

要使用 pandas 從結(jié)束日期中減去開始日期,您只需運行:

 

 

結(jié)果

 

 

現(xiàn)在要在 Spark 上做同樣的事情,你需要做的就是用 Koalas 替換 pandas:

 

 

就這么簡單。

接下來的安排和 Koalas 入門

我們創(chuàng)建了 Koalas ,是因為我們遇到了許多不愿意處理大數(shù)據(jù)的數(shù)據(jù)科學(xué)家。我們相信 Koalas 會通過讓他們很容易的在 Spark 上擴(kuò)展他們程序,從而使得他們能夠做更多的事。

到目前為止,我們已經(jīng)實現(xiàn)了常見的 DataFrame 操作方法,以及 pandas 中強(qiáng)大的索引技術(shù)。 以下是我們路線圖中的一些即將推出的項目,主要側(cè)重于改善覆蓋范圍:

用于處理文本數(shù)據(jù)的字符串操作;

時間序列數(shù)據(jù)的日期/時間操作。

該計劃尚處于初期階段,但正在迅速發(fā)展。 如果您有興趣了解更多有關(guān) Koalas 及入門的信息,請查看該項目的 GitHub 地址。

本文翻譯自 Koalas: Easy Transition from pandas to Apache Spark

標(biāo)簽: [db:TAGG]

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:20個安全可靠的免費數(shù)據(jù)源,各領(lǐng)域數(shù)據(jù)任你挑

下一篇:Github標(biāo)星過萬,Python新手100天學(xué)習(xí)計劃