欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

探索python?dask靈活的并行計(jì)算庫(kù)應(yīng)用場(chǎng)景示例

 更新時(shí)間:2024年01月12日 11:48:29   作者:程序員小寒  
這篇文章主要介紹了探索python?dask靈活的并行計(jì)算庫(kù)應(yīng)用場(chǎng)景示例,Dask?是?Python?中的一個(gè)靈活的并行計(jì)算庫(kù),允許用戶利用?CPU?內(nèi)核的強(qiáng)大功能,對(duì)大于內(nèi)存的數(shù)據(jù)集執(zhí)行分布式計(jì)算

引言

今天給大家分享一個(gè)超強(qiáng)的 python 庫(kù),dask

https://github.com/dask/dask 

Dask 的特點(diǎn)

  • 動(dòng)態(tài)任務(wù)調(diào)度:Dask 能夠智能地安排復(fù)雜的計(jì)算任務(wù),優(yōu)化資源利用率。

  • 兼容性:Dask 提供了與這些庫(kù)相似的 API,允許用戶輕松遷移到更大規(guī)模的數(shù)據(jù)處理上。

  • 延遲計(jì)算:Dask 允許構(gòu)建一個(gè)任務(wù)圖,其中計(jì)算是延遲執(zhí)行的,直到需要其結(jié)果時(shí)才真正觸發(fā)計(jì)算。

  • 透明地?cái)U(kuò)展到分布式計(jì)算:Dask 可以在單機(jī)上以多線程或多進(jìn)程的方式運(yùn)行,也可以擴(kuò)展到多機(jī)的分布式集群。

庫(kù)的安裝

我們可以直接使用 pip 來(lái)進(jìn)行安裝。

pip install dask

或者使用 conda 來(lái)安裝。

conda install dask

數(shù)據(jù)集生成

我們將創(chuàng)建一個(gè)包含六列的虛擬數(shù)據(jù)集。

第一列是時(shí)間戳—以秒的間隔采樣的二年,其他五列是隨機(jī)整數(shù)值。

import numpy as np
import pandas as pd
import dask.dataframe as dd
from datetime import datetime
dates = pd.date_range(
        start=datetime(year=2022, month=1, day=1),
        end=datetime(year=2023, month=12, day=31),
        freq='s'
    )    
df = pd.DataFrame()
df['Date'] = dates   
for i in range(5):
  df[f'X{i}'] = np.random.randint(low=0, high=100, size=len(df))    
df.to_csv(f'2022.csv', index=False)

性能對(duì)比

首先,讓我們使用 pandas 來(lái)運(yùn)行 groupby 計(jì)算并建立性能基線。

%%timeit
df.groupby("X0").agg({"X4": "sum"})

可以看到使用 pandas 進(jìn)行 groupby 操作,需要耗費(fèi) 831 ms

讓我們使用 Dask 運(yùn)行相同的 groupby 查詢。

import dask.dataframe as dd 
ddf = dd.read_csv('2022.csv')
%%timeit
ddf.groupby("X0").agg({"X4": "sum"})

對(duì)于同樣的操作,使用 dask 只需要 4 ms ,性能有了顯著的提升。

這是因?yàn)?pandas 僅使用 1 個(gè) CPU 核心來(lái)運(yùn)行查詢。而 Dask 使用所有核心來(lái)運(yùn)行計(jì)算。

以上就是探索python dask靈活的并行計(jì)算庫(kù)應(yīng)用場(chǎng)景示例的詳細(xì)內(nèi)容,更多關(guān)于python dask并行計(jì)算庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python爬蟲(chóng)信息輸入及頁(yè)面的切換方法

    Python爬蟲(chóng)信息輸入及頁(yè)面的切換方法

    今天小編就為大家分享一篇Python爬蟲(chóng)信息輸入及頁(yè)面的切換方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • 使用Python實(shí)現(xiàn)全攝像頭拍照與鍵盤(pán)輸入監(jiān)聽(tīng)功能

    使用Python實(shí)現(xiàn)全攝像頭拍照與鍵盤(pán)輸入監(jiān)聽(tīng)功能

    這篇文章主要介紹了使用Python實(shí)現(xiàn)全攝像頭拍照與鍵盤(pán)輸入監(jiān)聽(tīng)功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • flask-restful使用總結(jié)

    flask-restful使用總結(jié)

    Flask-RESTful是一個(gè)用于快速創(chuàng)建RESTful API接口的Flask擴(kuò)展。,這篇文章主要介紹了flask-restful使用總結(jié),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 詳解Python中range()與xrange()的區(qū)別

    詳解Python中range()與xrange()的區(qū)別

    range()?和?xrange()?是兩個(gè)函數(shù),可用于在?Python的?for?循環(huán)中迭代一定次數(shù)。本文將通過(guò)示例詳細(xì)說(shuō)說(shuō)二者的區(qū)別與使用,需要的可以參考一下
    2022-09-09
  • python linecache讀取行更新的實(shí)現(xiàn)

    python linecache讀取行更新的實(shí)現(xiàn)

    本文主要介紹了python linecache讀取行更新的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • python爬蟲(chóng)系列Selenium定向爬取虎撲籃球圖片詳解

    python爬蟲(chóng)系列Selenium定向爬取虎撲籃球圖片詳解

    這篇文章主要介紹了python爬蟲(chóng)系列Selenium定向爬取虎撲籃球圖片詳解,具有一定參考價(jià)值,喜歡的朋友可以了解下。
    2017-11-11
  • 基于python3抓取pinpoint應(yīng)用信息入庫(kù)

    基于python3抓取pinpoint應(yīng)用信息入庫(kù)

    這篇文章主要介紹了基于python3抓取pinpoint應(yīng)用信息入庫(kù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • python制作羅盤(pán)時(shí)鐘效果

    python制作羅盤(pán)時(shí)鐘效果

    這篇文章主要介紹了python制作羅盤(pán)時(shí)鐘效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • python使用多線程不斷刷新網(wǎng)頁(yè)的方法

    python使用多線程不斷刷新網(wǎng)頁(yè)的方法

    這篇文章主要介紹了python使用多線程不斷刷新網(wǎng)頁(yè)的方法,涉及Python多線程thread及time模塊操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • python廣度搜索解決八數(shù)碼難題

    python廣度搜索解決八數(shù)碼難題

    這篇文章主要介紹了python廣度搜索解決八數(shù)碼難題。想了解算法和數(shù)據(jù)結(jié)構(gòu)的同學(xué),一定要看一下
    2021-04-04

最新評(píng)論