PYTHONのためのIRONXLの使用

Pandasを使わずにExcelファイルをPythonで読み取る(Interop不要)

チャクニット・ビン
チャクニット・ビン
2025年1月14日
共有:

イントロダクション

PythonMicrosoft Excelファイルを読み取ることは、データ関連のタスクにおいて不可欠なスキルであり、データサイエンス、データ分析、ビジネスインテリジェンス、自動化などの分野で標準的な方法となっています。 Excelは、ユーザーフレンドリーなインターフェースと豊富な機能を備えているため、データの保存と整理に最も一般的に使用されるツールの一つです。 Microsoft Excelを扱う際には、pandasが最初に思い浮かぶライブラリですが、パフォーマンスとスピードを提供するIronXLのような他の強力なライブラリもあります。

IronXL for Pythonは、Excelファイルと連携するために設計された堅牢なライブラリです。 開発者は、Excelスプレッドシートをシームレスに作成、読み取り、データを分析し、操作することができます。 IronXLの主な利点には、使いやすさ、強力な機能、サーバーにMicrosoft Excelをインストールする必要がないことが含まれます。

IronXLを使用してPandasなしでPythonでExcelファイルを読み取る方法。

ステップ1: IronXLライブラリをインポートします。

ステップ2: ライセンスキーを追加します。

ステップ3: Excelファイルを読み込む。

ステップ4: IronXLを使用してExcelファイルを読み取る。

IronXLの紹介

PandasなしでPythonでExcelファイルを読み取る(Interop不要): 図1

IronXLは、Excelファイルを操作するための強力な機能を提供します。複数のシートのサポート、セルのフォーマット、さまざまなファイル形式(.xlsxや.xls)の読み書き、大規模データセットの操作が可能であり、データ操作タスクにおいて多用途なツールとなっています。

IronXL Pythonライブラリの主な機能

  1. 簡単なExcelファイルの処理: IronXLは、PythonでのExcelファイルの読み取り、書き込み、編集のプロセスを簡素化します。 IronXLを使用すると、Excelファイルを操作し、簡単に保存できます。 また、CSVファイル、XLSファイルにも対応しています。

  2. 複数シートのサポート: IronXLは、単一のExcelワークブック内の複数シートにわたってデータを簡単に読み書きできます。 これは、異なる種類のデータやレポートがさまざまなシートに含まれているExcelファイルを扱う際に理想的です。

    1. データの読み書き

      • データの読み取り: IronXLを使用すると、Excelファイル内の個々のセルや全行・列にアクセスできます。テキスト、数値、日付を含むすべての種類のセルから値を読み取ることがサポートされています。
    • データの書き込み: このライブラリは、既存のセルを更新する必要がある場合や、新しいデータをファイルに追加する場合でも、Excelファイルの書き込みをサポートします。また、csvのインポートなしでcsv形式とXLSXファイルをサポートしています。
  3. セル書式設定: IronXLはExcelセルをフォーマットする機能を提供します。 Pythonスクリプト内で直接、テキストの色、フォントサイズ、境界線、およびその他の視覚スタイルを設定できます。 これは、特定のフォーマットでレポートを作成する場合や、特定のデータポイントを強調する必要がある場合に役立ちます。

  4. さまざまなExcel形式との互換性: IronXLは、.xlsxファイル形式、.xlsファイル形式、.csvファイル形式を含む複数のExcelファイル形式を扱うことができます。 これは、さまざまなシステムから共有またはエクスポートされたExcelファイルとやり取りする際の多用途な選択肢となります。

  5. 大容量ファイルのサポート: IronXL は多くの行や列を含む大規模な Excel ファイルを処理するよう最適化されており、大量のデータセットを含むデータ分析タスクに適しています。

  6. クロスプラットフォームIronXLは.NET技術を基にして構築されていますが、クロスプラットフォームであり、Pythonを通じてWindows、macOS、Linuxで使用できます。

ステップ1: IronXLライブラリをインポートする

Pythonパッケージマネージャーを使用してIronXLをインポートし、Excelスプレッドシートデータを読み取ります。

pip install ironxl

次のステップは、IronXLから必要なライブラリをインポートすることです。

from ironxl import License, WorkBook, WorkSheet
PYTHON

手順 2: ライセンスキーを追加

IronXLはライセンスキーが必要です。こちらから無料ライセンスを取得し、コードの先頭にライセンスを配置してください。

License.LicenseKey = "Your Key"
PYTHON

ステップ 3: Excel ファイルを読み込む

WorkBook.Load() 関数を使用して Excel ファイルを読み込みます。 このメソッドは、Excelファイル全体を表すWorkbookオブジェクトを返します。

workbook = WorkBook.Load('sample.xlsx')
PYTHON

ステップ 4: IronXLを使用してExcelファイルを読み込む

ワークブックオブジェクトを使用してシートを読み取り、その後シート内のデータを読み取ります。

for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")
    for row in sheet.Rows:
        print([cell.Value for cell in row]) # excel data
PYTHON

完全なコード

Excelファイルを入力

PythonでPandasを使用せずにExcelファイルを読む(関数呼び出し不要):図2

from ironxl import License, WorkBook, WorkSheet
License.LicenseKey = "Your Key"
# Load the Excel workbook
workbook = WorkBook.Load('sample.xlsx')
# Read Multiple Sheets
for sheet in workbook.WorkSheets:
    print(f"Sheet Name: {sheet.Name}")
    for row in sheet.Rows:
        print([cell.Value for cell in row])
PYTHON

コードの説明

提供されたコードは、IronXLを使用して、複数シートを含むExcelファイルからデータを読み取る方法を示しています。 以下はコードのステップバイステップの説明です。

ライセンスキーの設定

コードの最初の行では、License.LicenseKeyプロパティを使用してライセンスキーを指定することにより、IronXLライセンスを設定します。 これは、IronXLライブラリをアクティブ化し、制限なく使用できるようにするために必要です。

2. Excelワークブックの読み込み

2行目では、WorkBook.Load() メソッドを使用して、Excelファイル (sample.xlsx) をWorkBookオブジェクトに読み込みます。 このオブジェクトは、ブック全体(つまり、Excelファイル)を表し、ファイル内のすべてのシートとデータを含んでいます。

3. シートを通しての反復処理

コードはその後、ワークブック内のシートをループし始めます。 WorkBook.WorkSheetsプロパティは、読み込まれたワークブック内のすべてのシートにアクセスを提供します。 各シートについて、シート名を使用してシートの名前を印刷します。 これは、複数のシートを操作する際に、どのシートが処理されているかを識別するのに役立ちます。

4. 各シートからのデータを読み取り、印刷する

各シート内で、コードはsheet.Rowsを使用して各行をループします。 各行は、その特定の行にあるセルの集合です。 コードは次に cell.Value を使用して行内の各セルの値を抽出し、各行のリストとして出力します。

出力

PythonでPandasを使用せずにExcelファイルを読み込む(Interop不要):図3

IronXLライセンス(試用版あり)

IronXLは、コード内で有効なライセンスキーで動作します。 ユーザーはライセンスページから簡単に試用ライセンスを取得できます。 ライセンスを使用するには、IronXLライブラリを使用する前に、以下のようにコードのどこかにライセンスを記述してください。

ironxl.License.LicenseKey = "Your License Key"
PYTHON

結論

IronXL は、Excelファイルを扱う際にpandasモジュールの最良の代替手段です。 それは、pandasをインポートする必要なく、PythonでExcelファイルを処理するための強力で簡単な方法を提供します。 さまざまなExcel形式をサポートしているため、データ処理やレポート作成のタスクを自動化しようとする開発者にとって優れた選択肢です。 pandas の代替を探している開発者は、IronXL を使用し始めることで、Excel シートの読み取り、書き込み、操作を完全にサポートできます。

チャクニット・ビン
ソフトウェアエンジニア
ChaknithはIronXLとIronBarcodeで作業しています。彼はC#と.NETに深い専門知識を持ち、ソフトウェアの改善と顧客サポートを支援しています。ユーザーとの対話から得た彼の洞察は、より良い製品、文書、および全体的な体験に貢献しています。
< 以前
複数のシートを持つExcelファイルをPythonで読み込む方法
次へ >
Pythonを使用してExcelに画像を挿入する方法