PYTHON 幫助

Dask Python(對開發者的運作方式)

發佈 2024年8月13日
分享:

介紹

Python 是一個強大的資料分析和機器學習語言,但處理大型數據集對於數據分析來說可能是一個挑戰。這就是... DaskDask 進場。Dask 是一個開源庫,提供先進的平行化分析,能夠在超出單個機器記憶體容量的大型數據集上高效計算。在本文中,我們將探討 Dask 庫的基本用法以及另一個非常有趣的 PDF 生成庫即 IronPDFIronSoftware 生成 PDF 文件。

為什麼使用Dask?

Dask設計用來將您的 Python 代碼從單個筆記型電腦擴展到大型叢集。它與 NumPy、pandas 和 scikit-learn 等流行的 Python 庫無縫整合,以實現平行執行而不需要顯著的代碼更動。

Dask 的主要功能

  1. 並行計算:Dask 允許您同時執行多個任務,大大加快計算速度。

  2. 可擴展性:它可以通過將數據集分成更小的塊並並行處理,來處理超過內存容量的數據集。

  3. 兼容性:與現有的 Python 庫相容,易於整合到您當前的工作流程中。

  4. 靈活性:提供高級集合如 Dask DataFrame、任務圖、Dask Array、Dask Cluster 和 Dask Bag,分別模仿 pandas、NumPy 和列表。

入門Dask

安裝

您可以使用 pip 安裝 Dask:

pip install dask[complete]

基本用法

以下是一個簡單的例子來演示如何使用 Dask 進行並行計算:

import dask.array as da
# Create a large Dask array
x = da.random.random((10, 10), chunks=(10, 10))
print('Gneerated Input')
print(x.compute())
# Perform a computation
result = x.mean().compute()
print('Gneerated Mean')
print(result)
PYTHON

在這個範例中,Dask 創建了一個大陣列並將其劃分為較小的塊。計算() 該方法觸發並行計算並返回結果。任務圖在內部使用以實現 Python Dask 中的並行計算。

輸出

Dask Python(開發人員的工作方式):圖 1

Dask DataFrames

Dask DataFrames 類似於 pandas DataFrames,但設計用於處理超出記憶體大小的數據集。以下是一個例子:

import dask
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
print(df[["x", "y"]].resample("1h").mean().head(10))
PYTHON

該程式碼展示了Dask處理時間序列資料、生成合成數據集以及高效計算小時平均值等彙總功能的能力,充分利用其平行處理能力。多個Python進程、分佈式排程器和多核計算資源用於實現Python Dask DataFrames中的平行計算。

輸出

Dask Python(對開發者的運作方式):圖2

最佳實踐

  1. 從小規模開始:先從小數據集入手,以了解 Dask 的運作原理,然後再擴展規模。

  2. 使用儀表板:Dask 提供了一個儀表板來監控計算的進度和性能。

  3. 優化塊大小:選擇適當的塊大小來平衡內存使用和計算速度。

介紹 IronPDF

Dask Python(對開發者的運作方式):圖 3 - IronPDF:Python PDF 庫

IronPDF 是一個強大的 Python 程式庫,設計用於使用 HTML、CSS、圖像和 JavaScript 創建、編輯和簽署 PDF 文件。它強調性能效率和最小的內存使用量。主要特點包括:

  • HTML 到 PDF 轉換:輕鬆將 HTML 文件、字符串和 URL 轉換為 PDF 文件,充分利用 Chrome PDF 渲染功能。
  • 跨平台支持:在 Windows、Mac、Linux 和各種雲平台上的 Python 3+ 無縫運行。它還兼容 .NET、Java、Python 和 Node.js 環境。
  • 編輯和簽署:自訂 PDF 屬性,應用如密碼和權限等安全措施,無縫添加數位簽名。
  • 頁面範本和設置:使用標題、頁腳、頁碼、可調整的邊距、自訂紙張大小和響應式設計來定制 PDF 佈局。
  • 標準合規:嚴格遵循 PDF 標準,例如 PDF/A 和 PDF/UA,確保 UTF-8 字符編碼相容性。還支持圖像、CSS 樣式表和字體等資產的高效管理。

安裝

pip install ironpdf 
pip install dask

使用IronPDF和Dask生成PDF文件。

先決條件

  1. 確保已安裝 Visual Studio Code
  2. 安裝了 Python 版本 3

首先,讓我們創建一個 Python 文件來添加我們的腳本

打開 Visual Studio Code 並創建一個文件,daskDemo.py。

安裝必要的庫:

pip install dask
pip install ironpdf

然後添加以下 Python 代碼來展示 IronPDF 和 Dask python 套件的使用

import dask
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
df = dask.datasets.timeseries()
print('\n\nGenerated DataFrame')
print(df.head(10))
print('\n\nComputed Mean Hourly DataFrame')
dfmean = df[["x", "y"]].resample("1h").mean().head(10)
print(dfmean)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with Dask</h1>"
content += "<h2>Generated DataFrame (First 10)</h2>"
rows = df.head(10)
for i in range(10):    
    row = df.head(10).iloc[i]
    content += f"<p>{str(row[0])},  {str(row[2])},  {str(row[3])}</p>"
content += "<h2>Computed Mean Hourly DataFrame (First 10)</h2>"
for i in range(10):    
    row = dfmean.head(10).iloc[i]
    content += f"<p>{str(row[0])}</p>"
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoIronPDF-Dask.pdf")
PYTHON

代碼說明

此代碼片段集成了 Dask 進行數據處理和 IronPDF 進行 PDF 生成。它展示了以下內容:

  1. Dask 集成: 使用 `dask.datasets.timeseries()` 生成合成時間序列DataFrame (`df`). 打印前10行 (`df.head(10)) 並計算每小時的平均數據框 (`dfmean`) 根據列 "x" 和 "y"。

  2. IronPDF Usage:使用 `License.LicenseKey` 設定 IronPDF 授權金鑰。創建一個 HTML 字串 (內容) 包含從生成和計算的DataFrame中獲取的標頭和數據。

將這個HTML內容渲染成PDF (`pdf`) 使用 ChromePdfRenderer()將 PDF 保存為 "DemoIronPDF-Dask.pdf"。

此代码結合了 Dask 在大型數據處理方面的功能和 IronPDF 將 HTML 內容轉換為 PDF 文件的功能。

輸出

Dask Python(它對開發者的運作方式):圖 4

PDF

Dask Python(它如何為開發者工作):圖5

IronPDF License

IronPDF 授權金鑰使用戶可以在購買之前查看其廣泛的功能。

在使用之前將授權金鑰放在腳本的開頭。 IronPDF 套件:

from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
PYTHON

結論

Dask 是一个多功能工具,可以显著提升你在 Python 的数据处理能力。通过启用并行和分布式计算,它可以让你高效处理大型数据集,并无缝集成到你现有的 Python 生态系统中。 IronPDF 是一個強大的 Python 函式庫,用於使用 HTML、CSS、圖片和 JavaScript 創建和操作 PDF 文件。它提供 HTML 轉 PDF、PDF 編輯、數字簽名和跨平台支持等功能,使其適合在 Python 應用中執行各種文件生成和管理任務。

結合這兩個函式庫,數據科學家可以進行高級數據分析和數據科學操作。然後使用 IronPDF 將輸出結果存儲在標準 PDF 格式中。

< 上一頁
加密 Python(它的工作原理對於開發人員)
下一個 >
Wand Python(它對開發者的工作原理)

準備開始了嗎? 版本: 2024.9 剛剛發布

免費 pip 安裝 查看許可證 >