PYTHON 幫助

pyarrow(開發人員的運作方式)

介紹

PyArrow 是一個強大的庫,提供 Apache Arrow 框架的 Python 介面。 Apache Arrow 是一個跨語言開發平台,用於記憶體中的資料。 它指定了一種標準化的與語言無關的列式內存格式,用於平面和層次數據,並針對現代硬件上的高效分析運算進行組織。PyArrow基本上就是作為 Python 包實現的 Apache Arrow Python 綁定。 PyArrow 可在不同數據處理系統和程式語言之間實現高效的數據交換和互操作性。 在本文後面,我們還將了解IronPDF,這是一個由Iron Software開發的 PDF 生成庫。

PyArrow的主要特點

  1. 柱狀記憶體格式

    PyArrow 使用列式記憶體格式,這對於記憶體分析操作是非常高效的。 此格式允許更好的 CPU 快取利用和向量化操作,使其非常適合數據處理任務。 PyArrow 能夠有效地讀寫 Parquet 文件結構,這是由於其列式特性。

  1. 互操作性: PyArrow 的主要優勢之一是能夠在不同的程式語言和系統之間進行資料交換,而不需要進行序列化或反序列化。 這在使用多種語言的環境中特別有用,例如數據科學和機器學習。

  2. 與 Pandas 的整合:PyArrow 可以用作 Pandas 的後端,允許有效的數據操作和存儲。 從 Pandas 2.0 開始,可以將數據存儲在 Arrow 陣列中,而不是 NumPy 陣列,這可以帶來性能提升,尤其是在處理字串數據時。

  3. 支援各種數據類型:PyArrow 支援多種數據類型,包括原始類型(整數、浮點數)、複雜類型(結構、列表)和嵌套類型。這使得其在處理不同類型的數據時非常多功能。

  4. 零复制读取:PyArrow 允许进行零复制读取,这意味着可以从 Arrow 内存格式读取数据而无需复制。 這樣能減少記憶體負擔並提高性能。

安裝

要安裝PyArrow,您可以使用pipconda

pip install pyarrow
pip install pyarrow
SHELL

conda install pyarrow -c conda-forge
py
PYTHON

基本用法

我們使用Visual Studio Code作為程式碼編輯器。 首先,建立一個新的檔案,pyarrowDemo.py。

以下是如何使用PyArrow創建表格並執行一些基本操作的簡單範例:

import pyarrow as pa
import pyarrow.dataset as pt
# Create a PyArrow table
data = [
    pa.array([1, 2, 3]),
    pa.array(['a', 'b', 'c']),
    pa.array([1.1, 2.2, 3.3])
]
table = pa.Table.from_arrays(data, names=['col1', 'col2', 'col3'])
# Display the table
print(table)
py
PYTHON

程式碼說明

這段 Python 代碼使用 PyArrow 從三個數組(pa.array)創建一個表(pa.Table)。 然後它輸出表格,顯示名為「col1」、「col2」和「col3」的列,每列包含對應的整數、字串和浮點數資料。

輸出

pyarrow(開發人員如何運作):圖1 - 終端顯示 PyArrow 表格物件及其內容。

與 Pandas 整合

PyArrow 可以無縫地與Pandas整合,以增強性能,特別是在處理大型數據集時。 以下是一個將 Pandas DataFrame 轉換為 PyArrow Table 的示例:

import pandas as pd
import pyarrow as pa
# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})
# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)
# Display the table
print(table)
py
PYTHON

程式碼說明

該 Python 程式碼將 Pandas DataFrame 轉換為 PyArrow 表(`pa.Table`),然後打印該表。 這個DataFrame由三個列(col1col2col3)組成,分別包含整數、字串和浮點數據。

輸出

pyarrow(如何為開發者工作):圖 2 - 顯示由熊貓 dataframe 轉換為 PyArrow 表生成的 PyArrow table 對象的終端輸出。

進階功能

1. 檔案格式

PyArrow 支援讀取和寫入多種檔案格式,如 Parquet 和 Feather。 這些格式經過性能優化,廣泛用於資料處理管道中。

2. 記憶體映射

PyArrow 支援記憶體映射文件存取,這使得在不將整個數據集載入記憶體的情況下,可以高效地讀取和寫入大型數據集。

3. 跨程序通信

PyArrow 提供工具進行進程間通信,使不同進程之間的數據共享更加高效。

介紹 IronPDF

pyarrow(它如何為開發人員工作):圖3 - IronPDF for Python:Python PDF庫

IronPDF 是一個適用於 Python 的庫,用於輕鬆處理 PDF 文件,允許程序化地創建、編輯和操作 PDF 文檔的任務。 它提供了許多功能,如從HTML生成PDF、向現有PDF添加文字、圖片和形狀,以及從PDF文件提取文字和圖片。 以下是一些主要功能

從 HTML 生成 PDF

IronPDF 可以輕鬆地將 HTML 文件、HTML 字串和 URL 轉換成 PDF 文件。 利用 Chrome PDF 渲染器將網頁直接轉換為 PDF 格式。

跨平台相容性

IronPDF 兼容 Python 3+,可在 Windows、Mac、Linux 和雲端平台上無縫運行。 它也支持 .NETJavaPythonNode.js。 環境。

編輯和簽署功能

透過設定屬性、增加密碼和權限等安全功能,以及應用數位簽章來增強 PDF 文件。

自訂頁面模板和設定

使用 IronPDF,您可以利用可自訂的頁首、頁尾頁碼和可調整的邊距來打造個性化 PDF。 它支援響應式佈局,並允許設置自定義紙張尺寸。

標準合規性

IronPDF 遵循 PDF 標準,包括 PDF/A 和 PDF/UA。 支持UTF-8 字符編碼,並能無縫處理影像、CSS 樣式和字體等資產。

使用 IronPDF 和 PyArrow 生成 PDF 檔案

IronPDF 先決條件

  1. IronPDF 使用 .NET 6.0 作為其底層技術。 那麼,您已在系統上安裝了.NET 6.0 執行階段

  2. Python 3.0+:您需要安裝 Python 版本 3 或更高版本。

  3. pip:安裝 IronPDF 套件需要的 Python 套件安裝工具 pip

    安裝必要的庫:

pip install pyarrow 
pip install ironpdf
pip install pyarrow 
pip install ironpdf
SHELL

然後添加以下程式碼來演示 IronPDF 和 pyarrow Python 套件的使用

import pandas as pd
import pyarrow as pa
from ironpdf import * 
# Apply your license key
License.LicenseKey = "license"
# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})
# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)
# Display the table
print(table)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with pyarrow</h1>"
content += "<p>table data</p>"
for row in table:
    # Access specific values in a row
    value_in_column1 = row[0]
    value_in_column2 = row[1]
    value_in_column3 = row[2]
    content += "<p>"+str(value_in_column1)+","+str(value_in_column2)+","+str(value_in_column3)+"</p>"    
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoPyarrow.pdf")
py
PYTHON

程式碼說明

該腳本演示了如何整合Pandas、PyArrow和IronPDF庫,從存儲在Pandas DataFrame中的數據創建PDF文檔:

  1. Pandas DataFrame 創建:

    • 創建一個包含三列(col1、col2、col3)的 Pandas DataFrame(df),其中包含數值和字串資料。
  2. 轉換為 PyArrow 表格:

    • 使用 pa.Table.from_pandas() 方法將 Pandas DataFrame(“df”)轉換為 PyArrow Table(“table”)。 此轉換促進了與基於 Arrow 的應用程式進行高效的數據處理和互操作性。
  3. 使用IronPDF生成PDF:

    • 使用 IronPDF 的 ChromePdfRenderer 並調用其 RenderHtmlAsPdf 方法,從包含標頭和從 PyArrow Table (table) 提取的數據的 HTML 字符串 (content) 生成 PDF 文檔(DemoPyarrow.pdf)。

輸出

pyarrow(如何為開發人員服務):圖 4 - 控制台輸出顯示了一個通過將 Panda DataFrame 轉換為 PyArrow 表所生成的 PyArrow 表對象。

輸出 PDF

pyarrow(它如何為開發人員工作):圖 5 - 使用 IronPDF for Python 庫生成的輸出 PDF,顯示 PyArrow 表中的按行數據。

IronPDF 授權

IronPDF Python

在使用 IronPDF 套件之前,將授權密鑰放置在腳本的開頭:

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

結論

PyArrow 是一個多功能且強大的庫,增強了 Python 在資料處理任務中的能力。 其高效的記憶體格式、互操作性功能以及與Pandas的整合,使其成為數據科學家和工程師不可或缺的工具。 無論您是處理大型數據集、執行複雜數據操作,還是構建數據處理管道,PyArrow 提供了所需的性能和靈活性,以有效應對這些任務。 另一方面,IronPDF 是一個強大的 Python 庫,可簡化從 Python 應用程式中直接創建、操作和渲染 PDF 文件的過程。 它無縫整合到現有的 Python 框架中,使開發者能動態生成和自訂 PDF。 搭配 PyArrowIronPDF Python 套件,使用者可以輕鬆處理資料結構並存檔資料。

IronPDF 也提供了全面的文件來協助開發人員入門,並附有許多展示其強大功能的程式碼範例。 欲了解更多詳情,請造訪文件代碼範例頁面。

查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。
< 上一頁
crc32c Python(開發者如何使用)
下一個 >
加密 Python(它的工作原理對於開發人員)

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

查看許可證 >