フッターコンテンツにスキップ
PYTHONヘルプ

fastparquet Python(開発者向けのしくみ)

fastparquet は、ビッグデータワークフローで一般的に使用されるParquetファイル形式を扱うために設計されたPythonライブラリです。 DaskやPandasのような他のPythonベースのデータ処理ツールとよく統合されます。 その機能を探り、コード例をいくつか見てみましょう。 この記事の後半では、IronPDFIron SoftwareからのPDF生成ライブラリについても学びます。

fastparquetの概要

fastparquet は効率的で、幅広いParquetの機能をサポートしています。 その主要な機能のいくつかは以下の通りです:

Parquetファイルの読み書き

Parquetファイルやその他のデータファイルから簡単に読み取り、書き込みができます。

PandasとDaskとの統合

Pandas DataFramesとDaskとシームレスに連携して並列処理が可能です。

圧縮サポート

データファイル内でgzip、snappy、brotli、lz4、zstandardなどのさまざまな圧縮アルゴリズムをサポートします。

効率的なストレージ

parquet列型ファイル形式とファイルへのポインティングメタデータファイルを使用して、大規模なデータセットやデータファイルのストレージと取得の両方に最適化されています。

インストール

pipを使用してfastparquet をインストールできます。

pip install fastparquet
pip install fastparquet
SHELL

またはcondaを使用してインストールできます。

conda install -c conda-forge fastparquet
conda install -c conda-forge fastparquet
SHELL

基本的な使い方

こちらはfastparquetを使った簡単な例です。

Parquetファイルの書き込み

Pandas DataFrameをParquetファイルに書き込みできます。

import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35],
    'city': ['New York', 'Los Angeles', 'Chicago']
})

# Write the DataFrame to a Parquet file
df.to_parquet('example.parquet', engine='fastparquet')

# Display confirmation message
print("DataFrame successfully written to 'example.parquet'.")
import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35],
    'city': ['New York', 'Los Angeles', 'Chicago']
})

# Write the DataFrame to a Parquet file
df.to_parquet('example.parquet', engine='fastparquet')

# Display confirmation message
print("DataFrame successfully written to 'example.parquet'.")
PYTHON

出力

fastparquet Python (開発者向けの動作): 図1 - コンソール出力

Parquetファイルの読み込み

ParquetファイルをPandas DataFrameに読み込めます。

import pandas as pd

# Read a Parquet file
df = pd.read_parquet('example.parquet', engine='fastparquet')

# Display the DataFrame
print(df.head())
import pandas as pd

# Read a Parquet file
df = pd.read_parquet('example.parquet', engine='fastparquet')

# Display the DataFrame
print(df.head())
PYTHON

出力

fastparquet Python (開発者向けの動作): 図2 - コンソール出力

Parquetファイルのメタデータ表示

import fastparquet as fp

# Reading metadata from Parquet file
meta = fp.ParquetFile('example.parquet').metadata
print("Parquet file metadata:")
print(meta)
import fastparquet as fp

# Reading metadata from Parquet file
meta = fp.ParquetFile('example.parquet').metadata
print("Parquet file metadata:")
print(meta)
PYTHON

出力

fastparquet Python (開発者向けの動作): 図3 - コンソール出力

高度な機能

並列処理のためのDaskの使用

fastparquetは大規模データセットを並列に処理するためにDaskとよく統合されます。

import dask.dataframe as dd

# Read a Parquet file into a Dask DataFrame
ddf = dd.read_parquet('example.parquet', engine='fastparquet')

# Perform operations on the Dask DataFrame
result = ddf.groupby('name').mean().compute()

# Display the result
print(result)
import dask.dataframe as dd

# Read a Parquet file into a Dask DataFrame
ddf = dd.read_parquet('example.parquet', engine='fastparquet')

# Perform operations on the Dask DataFrame
result = ddf.groupby('name').mean().compute()

# Display the result
print(result)
PYTHON

圧縮のカスタマイズ

Parquetファイルを書き込む際に異なる圧縮アルゴリズムを指定できます。

import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
})

# Write the DataFrame to a Parquet file with gzip compression
df.to_parquet('example.parquet', engine='fastparquet', compression='gzip')
import pandas as pd

# Create a sample DataFrame
df = pd.DataFrame({
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
})

# Write the DataFrame to a Parquet file with gzip compression
df.to_parquet('example.parquet', engine='fastparquet', compression='gzip')
PYTHON

IronPDFの紹介

fastparquet Python (開発者向けの動作): 図4 - IronPDF for Python: Python PDFライブラリ

IronPDFは、HTML、CSS、画像、JavaScriptから派生したPDFドキュメントの生成、修正、デジタル署名のために作成された堅牢なPythonライブラリです。 パフォーマンスに優れ、最小限のメモリ占有で動作します。 主な機能は以下の通りです。

1. HTMLからPDFへの変換

HTMLファイル、HTML文字列、URLをIronPDFを使用してPDFドキュメントに変換します。 例えば、Chrome PDFレンダラーを使用してウェブページをPDFにレンダリングできます

2. クロスプラットフォームサポート

Windows、Mac、Linux、およびさまざまなクラウドプラットフォームでPython 3+と互換性があります。 IronPDFは.NET、Java、Python、Node.js環境でも利用可能です。

3. 編集と署名

ドキュメントのプロパティを修正し、パスワード保護と権限でセキュリティを強化し、IronPDFを使用してPDFにデジタル署名を統合します。

4. ページテンプレートと設定

カスタマイズされたヘッダー、フッターページ番号、および調整可能な余白でPDFをカスタマイズします。 レスポンシブレイアウトをサポートし、カスタム用紙サイズに対応しています。

5. 標準準拠

PDF/AやPDF/UAのようなPDF標準に準拠しています。 UTF-8文字エンコーディングを処理し、画像、CSSスタイルシート、フォントなどのアセットを効果的に管理します。

IronPDFとfastparquetを使用してPDFドキュメントを生成する

Python用IronPDFの前提条件

  1. IronPDF は、基盤技術として.NET 6.0を利用しています。 したがって、.NET 6.0ランタイムがシステムにインストールされていることを確認してください。
  2. Python 3.0+: Pythonバージョン3以上がインストールされていることを確認してください。
  3. pip: IronPDFパッケージをインストールするためのPythonパッケージインストーラーpip をインストールしてください。

インストール

# Install latest version of the libraries
pip install fastparquet
pip install pandas
pip install ironpdf
# Install latest version of the libraries
pip install fastparquet
pip install pandas
pip install ironpdf
SHELL

コード例

以下のコード例は、PythonでfastparquetとIronPDFを一緒に使用する方法を示しています。

import pandas as pd
import fastparquet as fp
from ironpdf import ChromePdfRenderer, License

# Apply your license key for IronPDF
License.LicenseKey = "your Key"

# Sample DataFrame
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35],
    'city': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)

# Writing DataFrame to a Parquet file
fp.write('example.parquet', df)

# Reading from Parquet file into DataFrame
df_read = fp.ParquetFile('example.parquet').to_pandas()

# Displaying the read DataFrame
print("Original DataFrame:")
print(df)
print("\nDataFrame read from Parquet file:")
print(df_read)

# Initialize a ChromePdfRenderer instance
renderer = ChromePdfRenderer()

# Create a PDF from a HTML string using IronPDF
content = "<h1>Awesome Iron PDF with FastParquet</h1>"
content += "<p> Original DataFrame:</p>"
content += "<p>" + f"{str(df)}" + "</p>"
content += "<p> DataFrame read from Parquet file:</p>"
content += "<p>" + f"{str(df_read)}" + "</p>"

# Render the HTML content to a PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Export the PDF to a file
pdf.SaveAs("Demo-FastParquet.pdf")
import pandas as pd
import fastparquet as fp
from ironpdf import ChromePdfRenderer, License

# Apply your license key for IronPDF
License.LicenseKey = "your Key"

# Sample DataFrame
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35],
    'city': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)

# Writing DataFrame to a Parquet file
fp.write('example.parquet', df)

# Reading from Parquet file into DataFrame
df_read = fp.ParquetFile('example.parquet').to_pandas()

# Displaying the read DataFrame
print("Original DataFrame:")
print(df)
print("\nDataFrame read from Parquet file:")
print(df_read)

# Initialize a ChromePdfRenderer instance
renderer = ChromePdfRenderer()

# Create a PDF from a HTML string using IronPDF
content = "<h1>Awesome Iron PDF with FastParquet</h1>"
content += "<p> Original DataFrame:</p>"
content += "<p>" + f"{str(df)}" + "</p>"
content += "<p> DataFrame read from Parquet file:</p>"
content += "<p>" + f"{str(df_read)}" + "</p>"

# Render the HTML content to a PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Export the PDF to a file
pdf.SaveAs("Demo-FastParquet.pdf")
PYTHON

コードの説明

このコードスニペットは、HTMLコンテンツからデータを操作し、PDFドキュメントを生成するためにいくつかのPythonライブラリを利用する方法を示しています。

  1. インポートとセットアップ: データ操作、Parquetファイルの読み書き、PDF生成のために必要なライブラリをインポートします。

  2. ライセンスキーの設定: IronPDFのライセンスキーを設定し、完全な機能を有効にします。

  3. サンプルDataFrameの作成: 個人(名前、年齢、都市)の情報を含むサンプルDataFrame (df)を定義します。

  4. DataFrameをParquetに書き込み: DataFrame df をParquetファイルexample.parquetに書き込みます。

  5. Parquetファイルからの読み込み: Parquetファイル(example.parquet)からデータを読み込み、DataFrame (df_read)に戻します。

  6. HTMLからPDFを生成:
    • IronPDFを使用してChromePdfRendererインスタンスを初期化します。
    • 元のDataFrame (df)とParquetファイルから読み込んだDataFrame (df_read)を表示する見出し (<h1>)と段落 (<p>)を含むHTML文字列 (content)を構築します。
    • IronPDFでHTMLコンテンツをPDFドキュメントとしてレンダリングします。
    • 生成されたPDFドキュメントをDemo-FastParquet.pdfとして保存します。

このコードは、FastParquetのサンプルコードを示しており、データ処理機能とPDF生成を統合して、parquetファイルに保存されたデータに基づいてレポートや文書を作成するのに役立ちます。

出力

fastparquet Python (開発者向けの動作): 図5 - 元のDataframeからのデータとParquetファイルからのDataframeを表示するコンソール出力

出力 PDF

fastparquet Python (開発者向けの動作): 図6 - IronPDFライブラリを使用して生成された出力PDF

IronPDFライセンス

ライセンス情報については、IronPDFライセンスページをご覧ください。

スクリプトを開始する前に、IronPDFパッケージを使用する前にライセンスキーを配置します。

from ironpdf import License

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

# Apply your license key
License.LicenseKey = "your Key"
PYTHON

結論

fastparquet は、PythonでParquetファイルを操作するための強力で効率的なライブラリです。 PandasやDaskとの統合により、Pythonベースのビッグデータワークフローで大規模なデータセットを扱うための優れた選択肢となっています。 IronPDF は、Pythonアプリケーションから直接PDFドキュメントの作成、操作、レンダリングを支援する堅牢なPythonライブラリです。 HTMLコンテンツをPDFドキュメントに変換し、インタラクティブなフォームを作成したり、ファイルの結合やウォーターマークの追加などのさまざまなPDF操作を簡単に行えます。 IronPDFは既存のPythonフレームワークと環境とシームレスに統合され、動的にPDFドキュメントを生成・カスタマイズするための多目的な解決策を開発者に提供します。 fastparquetIronPDFを組み合わせることで、Parquetファイルフォーマットでのデータ操作とPDF生成をシームレスに行えます。

IronPDFは、開発者がその機能を最大限に活用するための包括的なドキュメントとコード例を提供しています。 詳細については、ドキュメントおよびコード例ページをご覧ください。

カーティス・チャウ
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。