他のコンポーネントと比較

Interopを使用せずにPandasでExcelファイルを読み取る代替方法 | IronXL for Python

公開済み 2024年4月3日
共有:

Excelファイルは、データ分析および操作タスクにおいて広く利用されており、表形式のデータを保存および整理する便利な方法を提供します。 Pythonには、複数のライブラリがご利用いただけます Excelファイルの読み取り、それぞれが独自の機能と能力を備えている。 代表的なオプションとして、PandasとIronXLがあり、どちらもPythonでExcelファイルを読み取る効率的な方法を提供しています。

この記事では、の機能とパフォーマンスを比較します。 パンダス 以下のコンテンツを日本語に翻訳してください: IronXL PythonでExcelファイルを読み取る。

Pandas - オープンソースライブラリ

パンダス は、Python用の強力なオープンソースのデータ分析および操作ライブラリです。 それは、異なるタイプの列を持つ可能性がある二次元のラベル付きデータ構造であるDataFrameデータ構造を紹介します。Pandasは、CSVファイル、SQLデータベース、Excelファイルなどのさまざまなソースからデータの読み書きを含む、データ操作のための広範な機能を提供します。

Pandasの主な機能のいくつかを以下に示します:

データフレーム

PandasはDataFrameデータ構造を導入します。これは基本的に、異なる型の列を持つ可能性がある2次元ラベル付きデータ構造です。スプレッドシートやSQLテーブルに似ており、表形式データに対してフィルタリング、グループ化、および集計などの操作を簡単に行うことができます。

データ操作

Pandasは、データのマージ、リシェイプ、スライス、インデックス、およびピボット等のデータ操作のための幅広い機能を提供します。 これらの操作により、ユーザーはデータを効率的にクリーンアップ、変換、および分析や可視化のために準備することができます。

時系列機能

Pandasは、時系列データの操作に対する強力なサポートを提供しており、日付/時間のインデックス作成やリサンプリングのためのツール、欠損データやタイムゾーン変換の処理を便利に行うメソッドを含んでいます。

図書館との統合

Pandasは、NumPy、Matplotlib、Scikit-learnなど、データ分析や科学計算でよく使用されるさまざまなPythonライブラリとシームレスに連携することができます。 この相互運用性により、ユーザーは単一の分析ワークフロー内で異なるライブラリの強みを活用することができます。

全体的に見て、PandasはPythonにおけるデータ操作と解析のための強力なツールであり、金融、経済学、生物学、社会科学を含む様々な分野で広く使用されています。

IronXL - Python用Excelライブラリ

IronXL は、Excelファイルを扱うために特別に設計されたPythonライブラリです。 PythonでExcelドキュメントの読み込み、書き込み、操作のための直感的なAPIを提供します。 IronXLは、Microsoft ExcelやExcel Interopなどの外部依存性を排除し、シンプルなインターフェースを提供することで、Excelファイル操作を簡素化することを目指しています。

以下は、IronXLの主な機能の一部です:

直感的なPython 3+ ExcelドキュメントAPI

IronXLは、直感的で使いやすいPython 3+ ExcelドキュメントAPIを提供しており、開発者がExcelスプレッドシートファイルの読み込み、編集、および作成をスムーズに行うことができます。

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

Python 3以上のバージョン向けに設計され、Windows、Mac、Linux、およびクラウドプラットフォームと互換性があるIronXLは、デプロイメント環境における柔軟性を保証します。

Microsoft OfficeやExcel Interopは不要

開発者は、Microsoft Officeをインストールしたり、Excel Interopを使用することなく、PythonでExcelファイルを操作できるため、統合プロセスが簡素化され、依存関係が最小化されます。

互換性

Python 3.7以降の様々なオペレーティングシステムに対応しています。対応オペレーティングシステムにはMicrosoft Windows、macOS、Linux、Docker、Azure、そしてAWSが含まれます。 JetBrains PyCharm やその他のPython IDEのような人気のあるIDEと互換性があります。

多彩なワークブックの取り扱い

様々な形式のスプレッドシートを作成、読み込み、保存、およびエクスポートします。対応形式には、XLS、XLSX、XSLT、XLSM、CSV、TSV、JSON、HTML、バイナリ、およびバイト配列が含まれます。

強力なワークシート編集

メタデータの編集、権限とパスワードの設定、ワークシートの作成および削除、シートレイアウトの操作、画像の処理などが可能です。

セルレンジの高度な操作

セル範囲に対して、ソート、切り詰め、クリア、コピー、値の検索と置換、ハイパーリンクの設定、セルの結合および結合解除などのさまざまな操作を実行します。

フレキシブル・セル・スタイリング

フォント、サイズ、境界線、配置、背景パターンを含むセルのスタイルをカスタマイズし、条件付き書式を適用します。

数学関数とデータ形式

平均、合計、最小値、最大値などの数学関数を利用し、テキスト、数値、数式、日付、通貨、科学、時間、ブール値、カスタムフォーマットなどのセルデータ形式を設定します。

PyCharmを使用してPythonプロジェクトを作成する

まずは、Pythonをコンピュータにインストールする必要があります。公式サイトから最新バージョンのPython 3.xをインストールしてください。 Pythonウェブサイト. Pythonをインストールする際には、コマンドラインからアクセスできるようにPythonをシステムPATHに追加するオプションを選択してください。

PandasとIronXLの両方の機能を示すために、エクセルファイルを読み込むPythonプロジェクトを、人気のある統合開発環境であるPyCharmを使って作成しましょう。 (IDE (統合開発環境)) for Python(パイソン用)。

  1. PyCharmを開き、新しいPythonプロジェクトを作成してください。

    パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図 1 - 新しい PyCharm プロジェクトの作成

  2. 以下のようにプロジェクトを構成します:

    • プロジェクトに名前を付ける。 この場合「pythonReadExcel

    • プロジェクトの希望する場所を選択してください

    • インタープリタの種類を選択してください: Project venv

    • Pythonバージョンを選択

      パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図2 - プロジェクト名、インタープリタタイプ、およびPythonバージョンの設定

  3. 「作成」をクリックして、プロジェクトを作成します。

pipを使用してPandasとIronXLをインストールする

Pandasのインストール

プロジェクトにPandasをインストールするには、以下の手順に従ってください:

  1. コマンドプロンプトまたはターミナルを開く:PyCharmでは、View -> Tool Windows -> Terminalから。

    パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図3 - ターミナルを開く

  2. pipを使用してPandasをインストールする: Pandasはpipパッケージマネージャーを使用してインストールできます。 ターミナルで次のコマンドを実行してください。
    pip install pandas

このコマンドは、Pandasライブラリとその依存関係をPython Package Indexからインストールします。 (PyPI).

![パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図 4 - Pandasをインストールした後のコンソール出力](/static-assets/excel/blog/pandas-read-excel/pandas-read-excel-4.webp)
  1. pip を使用して OpenPyXL をインストールする: OpenPyXL は、Excel ファイルの読み書きを支援するライブラリです。 それは、Pandasで使用される依存関係の一つです。 パンダスをインストールすると、OpenPyXLが既にインストールされていない場合は自動的にインストールされます。 万が一インストールされていない場合は、ターミナルで以下のコマンドを使用してインストールできます:
pip install openpyxl

IronXLのインストール

PythonプロジェクトにIronXLをインストールするための手順は以下の通りです。

  1. 必要条件の確認: IronXLをインストールする前に、システムに必要な前提条件がインストールされていることを確認してください。

     **.NET 6.0 sdk**:IronXLはIronXL .NETライブラリ(特に.NET 6.0)を基盤技術としています。 .NET 6.0 SDKがマシンにインストールされていることを確認してください。公式サイトからダウンロードすることができます。 [**.NET website**](https://dotnet.microsoft.com/download/dotnet/6.0).
  2. コマンドプロンプトまたはターミナルを開く: 前と同じことをしてください。

  3. pip経由でIronXLをインストールする: IronXLはpipパッケージマネージャーを使用してインストールできます。 次のコマンドを実行します:
pip install IronXL

このコマンドは、IronXLライブラリとその依存関係をPythonパッケージインデックスから収集、ダウンロード、およびインストールします。 (PyPI).

パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図5 - IronXLをインストールしたときのコンソール出力

PandasとIronXLを使用したExcelファイルの読み取り

すべての設定が完了したので、次に両方のライブラリを使用してExcelファイルを読み取る方法に進みます。 これから読み取るデモExcelファイルには、ヘッダ行がName、Marks、Resとなっており、以下の値が含まれています。

パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図6 - サンプルExcelシート

Pandasを使用する

ステップ 1

Pandasライブラリをインポートし、 read_excel を使用します()Excelファイルから列データを読み取る関数。

import pandas as pd
# Read the Excel file
df = pd.read_excel("file.xlsx")
PYTHON

パンダスの read_excel を使用する際()関数では、必要に応じて表示のオプションをいくつか指定することができます:**

ヘッダー: Excelファイル内で列名として使用する行を指定します。 ヘッダー行が存在しないことを示すために None に設定することもできますし、行番号を示す整数を指定することもできます。 スキップした場合、ヘッダーはデフォルトでtrueに設定され、最初の行の位置がヘッダー行のラベルとして表示されます。

index_col: DataFrameのインデックスとして使用する列を指定します。 1つの列名または列インデックスを渡すことができます。 または、列名や列インデックスのリストを渡して、MultiIndexを作成することもできます。

sheet_name: シートを指定します(s) Excelファイルから読み取ります。シート名を文字列として提供するか、ゼロ始まりのシート位置を示す整数を指定できます。

usecols: Excelファイルから読み取る列を指定します。列名を一つ、または列のインデックスを渡すことができます。 特定の列を読み取るために、列名や列インデックスのリストを渡すこともできます。

dtype: 列のデータ型を指定します。 列名や列インデックスをキーにし、目的とするデータ型を値とする辞書を渡すことができます。

コンバーター: カスタム解析のために列に適用する関数を指定します。 キーが列名または列インデックスで、値が関数である辞書を渡すことができます。

na_values: NaN として認識する追加の文字列を指定します (NaN(Not a Number)) 変数. 文字列のリストを渡してNaNとして扱うことができます。

parse_dates: どの列を日付として解析するかを指定します。 単一の列名または列インデックスのいずれかを渡すことができます。 または、日付として解析する列名またはインデックスのリストを渡すこともできます。

date_parser: 日付を解析するために使用する関数を指定します。 文字列を受け取り、datetimeオブジェクトを返す関数を渡すことができます。

skiprows: Excelファイルの先頭でスキップする行数を指定します。

これらのオプションは、Pandasを使ってExcelファイルを読み込む際の柔軟性を提供し、特定の要件に応じて読み込みプロセスをカスタマイズすることができます。

ステップ 2

データフレームの内容を表示する。

print(df)
PYTHON

以下は、上記のコードの出力結果です:

パンダス Read Excel の代替ソフト (Interopを使用しないで)   Python 用 IronXL: 図7 - Pandasコードを実行した出力結果

IronXLの使用

ステップ 1: IronXLライブラリをインポートし、WorkBook.Loadを使用します()Excelファイルを読み込むための**メソッド。Loadメソッドのパラメータには、有効なファイルURL、ローカルファイルパスオブジェクト、またはスクリプトと同じディレクトリにあるファイル名を渡すことができます。

from ironxl import WorkBook
# Load the Excel file like object
workbook = WorkBook.Load("file.xlsx")
PYTHON

ステップ 2: IronXL を使用すると、複数のシートをリクエストしたり、列ラベルを印刷することができます。 ワークシートおよびセルにアクセスして、保存されている列のデータを読み取ります。 セルは数値列や文字列など、任意のデータ型であることができます。 セル値は、IntValueプロパティを使用して文字列列を数値値に解析することで、intに変換できますし、その逆も可能です。

# Access the first worksheet
# Loads the first sheet from list of int default worksheets
worksheet = workbook.DefaultWorkSheet
# Select a cell and return the converted value
cell_value = worksheet ["A2"].IntValue
print(cell_value)
# Read from the entire worksheet elegantly.
for cell in worksheet:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
PYTHON

以下のコードの出力は、IronXLの汎用性を適切な表示形式で示しています:

パンダス Read Excel の代替ソフト (Interopを使用しないで)   IronXL for Python: 図8 - IronXLコードからのコンソール出力

Excelファイルの操作に関する詳細情報については、こちらを閲覧してください コード例 ページ

結論

結論として、Pandasと IronXL PythonでExcelファイルを読み取るための効率的な方法を提供します。 しかし、IronXLはPandasに比べて、特に使いやすさ、パフォーマンス、および専門的なExcel処理機能においていくつかの利点を提供します。 IronXLの直感的なAPIと包括的な機能は、広範なExcel操作タスクを必要とするプロジェクトにとって優れた選択肢となります。

さらに、IronXLはMicrosoft ExcelやExcel Interopのような外部依存関係を排除し、開発プロセスを簡素化し、異なるプラットフォーム間での移植性を向上させます。 したがって、Excelファイル操作に関して強力かつ効率的なソリューションを求めるPython開発者にとって、IronXLがPandasに比べて優れた機能と強化された機能を提供するため、最良の選択肢として浮上します。 IronXL の詳細情報については、こちらのリンクをご覧ください。 ドキュメント ページ

IronXLは、 無料体験 Pythonプロジェクトのために、その機能性と実現可能性をテストするために。 このトライアルにより、開発者はIronXLが提供する機能と能力のすべてを事前の金銭的なコミットメントなしで探索することができます。 データのインポート/エクスポートタスク、レポート生成、もしくはデータ分析のためにIronXLを検討されている場合、無料トライアルを利用することで、そのパフォーマンスと特定の要件に対する適合性を評価する機会を得ることができます。

ライセンスオプションの詳細および無料トライアルのダウンロードについては、IronXLのウェブサイトをご覧ください。 ライセンスページ. こちらでは、商業使用およびサポートのオプションを含む、ライセンス条件に関する詳細情報をご覧いただけます。 IronXLを使い始め、その利点を実際に体験するために、ライブラリを以下からダウンロードしてください。 [以下の内容を日本語に翻訳します:

ここに

ご希望のイディオムや技術用語が追加されることによって、より適切な翻訳が提供できる場合もありますので、詳細なコンテキストを教えていただけると幸いです。](/python/excel/).

< 以前
OpenpyXL Python と IronXL Python の比較

準備はできましたか? バージョン: 2024.9 新発売

無料のpipダウンロード ライセンスを表示 >