91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何加快pandas計算速度

發布時間:2021-11-30 10:43:06 來源:億速云 閱讀:454 作者:小新 欄目:互聯網科技

小編給大家分享一下如何加快pandas計算速度,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

如何加快pandas計算速度

什么問題困擾我們?

使用pandas,當您運行以下行時:

# Standard apply

df.apply(func)

得到這個CPU使用率:

如何加快pandas計算速度

標準pandas適用 - 僅使用1個CPU

即使計算機有多個CPU,也只有一個完全專用于您的計算。

而不是下邊這種CPU使用,想要一個簡單的方法來得到這樣的東西:

如何加快pandas計算速度

并行Pandas適用 - 使用所有CPU

Pandaral·lel?如何幫助解決這個問題?

Pandaral·lel?的想法是將pandas計算分布在計算機上所有可用的CPU上,以顯著提高速度。

安裝:

$ pip install pandarallel [--user]

導入和初始化:

# Import

from pandarallel import pandarallel



# Initialization

pandarallel.initialize()

用法:

使用帶有pandas DataFrame的簡單用例df和要應用的函數func,只需替換經典apply的parallel_apply。

# Standard pandas apply

df.apply(func)



# Parallel apply

df.parallel_apply(func)

做完了!

請注意如果不想并行化計算,仍然可以使用經典apply方法。

也可以通過將顯示每個工作CPU一個進度條progress_bar=True的initialize功能。

如何加快pandas計算速度

并行應用進度條

并配有更復雜的情況下使用帶有pandas DataFrame df,該數據幀的兩列column1,column2和功能應用func:

# Standard pandas apply

df.groupby(column1).column2.rolling(4).apply(func)

# Parallel apply

df.groupby(column1).column2.rolling(4).parallel_apply(func)

基準

對于此處提供的四個示例,請執行以下配置:

https://github.com/nalepae/pandarallel/blob/master/docs/examples.ipynb

  • 操作系統:Linux Ubuntu 16.04

  • 硬件:Intel Core i7 @ 3.40 GHz - 4核

如何加快pandas計算速度

4核上的標準與并行(越低越好)

除了df.groupby.col_name.rolling.apply速度僅增加x3.2因子之外,平均速度增加約x4因子,即使用過的計算機上的核心數。

它是如何在引擎蓋下工作的?

調用parallel_apply時,Pandaral·lel

  • 實例化一個Pyarrow Plasma共享內存

https://arrow.apache.org/docs/python/plasma.html

  • 為每個CPU創建一個子進程,然后要求每個CPU在DataFrame的子部分上工作

  • 將所有結果合并到父進程中

以上是“如何加快pandas計算速度”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

渑池县| 山东| 旌德县| 高雄市| 衢州市| 临邑县| 衡东县| 临颍县| 金湖县| 隆化县| 承德市| 曲阜市| 钟祥市| 竹溪县| 砚山县| 芜湖市| 宁南县| 台湾省| 修武县| 富源县| 延寿县| 大冶市| 湖北省| 三门峡市| 云浮市| 无极县| 平阳县| 郧西县| 泰安市| 漳浦县| 东阿县| 阜阳市| 义乌市| 保康县| 韶关市| 岫岩| 东宁县| 平湖市| 大厂| 龙川县| 尼勒克县|