說明

在做資料處理時,有些情況下會遇到每一筆資料會花費比較長的時間(運算or等待API回傳),這個時候如果用傳統的apply方式可能就會需要等待比較久的時間,因此如果電腦有閒置的資源的話不妨考慮使用並行運算,讓多筆資料可以同時處理,加快計算時間!

主要功能

  • 利用多核心CPU並行運算
  • 可以顯示進度條

使用方式

安裝

pip install pandarallel

基礎用法

from pandarallel import pandarallel
pandarallel.initialize() # 初始化

df["A"].parallel_apply(func)

參數設定

在初始化的時候可以設定

  • nb_workers=4:並行的數量
  • progress_bar=True:顯示進度條
    • 注意如果要使用進度條的話,需要安裝ipywidgets

使用限制及注意事項

  • 進程應該如何選擇?
    • 以實體CPU核心數為最大值
  • 什麼情況不適合使用?
    • 數據量比較小的時候
    • 前後計算有依賴性的時候

參考資料