
Pandas Read Excel Alternatives (Interopを使用しない) | IronXL for Python
Excel ファイルはデータ分析や操作タスクで広く使用されており、表形式のデータを保存および整理するための便利な方法を提供します。 Python には、 Excel ファイルの読み取りに使用できる複数のライブラリがあり、それぞれ独自の機能セットを備えています。 2 つの代表的なオプションは Pandas と IronXL です。どちらも Python で Excel ファイルを読み取るための効率的な方法を提供します。
この記事では、Python で Excel ファイルを読み取るためのPandasとIronXLの機能とパフォーマンスを比較します。
Pandas - オープンソースライブラリ
Pandas は、Python 用の強力なオープンソースのデータ分析および操作ライブラリです。 DataFrameデータ構造を紹介します。これは、異なる型の列を持つ可能性のある2次元のラベル付きデータ構造です。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の相互運用性は不要
開発者は、Microsoft Office をインストールしたり、Excel Interop を扱ったりすることなく、Python で Excel ファイルを操作できるため、統合プロセスが簡素化され、依存関係が最小限に抑えられます。
互換性
Microsoft Windows、macOS、Linux、Docker、Azure、AWS などのさまざまなオペレーティング システムで Python 3.7+ をサポートします。 JetBrains PyCharm やその他の Python IDE などの一般的な IDE と互換性があります。
多用途のワークブック処理
XLS、XLSX、XSLT、XLSM、CSV、TSV、JSON、HTML、バイナリ、バイト配列など、さまざまな形式でスプレッドシートを作成、読み込み、保存、エクスポートします。
強力なワークシート編集
メタデータの編集、権限とパスワードの設定、ワークシートの作成と削除、シートレイアウトの操作、画像の処理などを行います。
高度なセル範囲操作
並べ替え、トリミング、クリア、コピー、値の検索と置換、ハイパーリンクの設定、セルの結合と結合解除など、セル範囲に対してさまざまな操作を実行します。
柔軟なセルスタイル
フォント、サイズ、境界線、配置、背景パターンなどのセルのスタイルをカスタマイズし、条件付き書式を適用します。
数学関数とデータ形式
平均、合計、最小、最大などの数学関数を活用し、テキスト、数値、数式、日付、通貨、科学的、時間、ブール値、カスタム形式などのセル データ形式を設定します。
PyCharm を使用した Python プロジェクトの作成
まず、Pythonをマシンにインストールする必要があります。Pythonの公式サイトから最新バージョン for Python 3.xをインストールしてください。 Python をインストールするときは、コマンド ラインからのアクセスを許可するために、Python をシステム PATH に追加するオプションを選択してください。
Excel ファイルの読み取りにおける Pandas と IronXL の両方の機能を実証するために、Python 用の一般的な統合開発環境 (IDE) である PyCharm を使用して Python プロジェクトを作成しましょう。
-
PyCharm を開き、新しい Python プロジェクトを作成します。

-
プロジェクトを次のように構成します。
- プロジェクトに名前を付けます。 この場合は" pythonReadExcel "
- プロジェクトの希望場所を選択してください
- インタープリターの種類を選択: プロジェクト venv
- Pythonのバージョンを選択

-
"作成"をクリックしてプロジェクトを作成します。
pipを使ってPandasとIronXLをインストールする
Pandasのインストール
プロジェクトに Pandas をインストールするには、次の手順に従います。
1.コマンドプロンプトまたはターミナルを開きます。PyCharmでは、[表示]→[ツールウィンドウ]→[ターミナル] から開きます。

-
pip を介して Pandas をインストールする: Pandas は pip パッケージ マネージャーを使用してインストールできます。 ターミナルで次のコマンドを実行します。
pip install pandasSHELLこのコマンドは、Python パッケージ インデックス (PyPI) から Pandas ライブラリとその依存関係をインストールします。

-
pip を使って OpenPyXL をインストールします。OpenPyXLは Excel ファイルの読み書きを支援するライブラリです。 これは、Pandas が使用する依存関係の 1 つです。 Pandas をインストールすると、OpenPyXL がまだインストールされていない場合は自動的にインストールされます。 何らかの理由でインストールされていない場合は、ターミナルで次のコマンドを使用してインストールできます。
pip install openpyxlSHELL
IronXLのインストール
Python プロジェクトに IronXL をインストールするには、次の手順に従います。
1.前提条件の確認: IronXLをインストールする前に、必要な前提条件がシステムにインストールされていることを確認してください。
.NET 6.0 SDK: IronXLは、基盤となる技術としてIronXL .NETライブラリ、特に.NET 6.0に依存しています。 .NET 6.0 SDKがマシンにインストールされていることを確認してください。公式.NETウェブサイトからダウンロードできます。
2.**コマンドプロンプトまたはターミナルを開きます。**前と同じ操作を行います。 3. pip を介してIronXLをインストールする: IronXL は、 pip パッケージ マネージャーを使用してインストールできます。 次のコマンドを実行します:
Pandas の**read_excel()**関数を使用する場合、必要に応じて表示するためのいくつかのオプションを指定できます。
-ヘッダー: Excel ファイル内のどの行を列名として使用するかを指定します。 ヘッダー行がないことを示すためにNoneに設定することも、行番号を示す整数を指定することもできます。 スキップされた場合、ヘッダーはデフォルトで True に設定され、最初の行の位置がヘッダー行ラベルとして表示されます。
-
index_col: DataFrameのインデックスとして使用する列を指定します。 単一の列名または列インデックスを渡すことも、列名または列インデックスのリストを渡して MultiIndex を作成することもできます。
-
sheet_name: Excelファイルから読み込むシートを指定します。シート名は文字列、または0から始まるシート位置を示す整数で指定できます。
-
usecols: Excelファイルから読み込む列を指定します。単一の列名、列インデックス、または列名や列インデックスのリストを指定して、特定の列を読み込むことができます。
-
**dtype:**列のデータ型を指定します。 キーがカラム名またはカラムインデックスであり、値が望ましいデータ型である辞書を渡すことができます。 -**コンバーター:**カスタム解析のために列に適用する関数を指定します。 キーが列名または列インデックスで、値が関数である辞書を渡すことができます。
-
na_values: NaN (非数) 値として認識する追加の文字列を指定します。 NaN として扱われる文字列のリストを渡すことができます。
-
**parse_dates:**日付として解析する列を指定します。 単一の列名または列インデックスを渡すことも、列名またはインデックスのリストを渡して日付として解析することもできます。
-
**date_parser:**日付の解析に使用する関数を指定します。 文字列を受け入れて datetime オブジェクトを返す関数を渡すことができます。
-
skiprows: Excelファイルの先頭でスキップする行数を指定します。
これらのオプションにより、Pandas を使用して Excel ファイルを読み取る際の柔軟性が向上し、特定の要件に応じて読み取りプロセスをカスタマイズできるようになります。
ステップ 2
DataFrame の内容を表示します。
print(df)
上述のコードの出力は以下の通りです:

IronXLの使用
ステップ1: IronXLライブラリをインポートし、 **WorkBook.Load()**メソッドを使用してExcelファイルを読み込みます。Loadメソッドのパラメータには、有効なファイルURL、ローカルファイルパスオブジェクト、またはスクリプトと同じディレクトリにある場合はファイル名を渡すことができます。
from ironxl import WorkBook
# Load the Excel file as a WorkBook object
workbook = WorkBook.Load("file.xlsx")
ステップ 2: IronXL を使用すると、複数のシートにアクセスし、列ラベルを印刷できます。 ワークシートとセルにアクセスして、列に保存されたデータを読み取ります。 セルは、数値列や文字列列など、任意のデータ型にすることができます。 IntValue プロパティを使用して文字列列を数値に解析することで、セルの値を int に変換できます。また、その逆も可能です。
# Access the first worksheet
worksheet = workbook.DefaultWorkSheet
# Select a specific cell and return the converted value
cell_value = worksheet["A2"].IntValue
print(cell_value)
# Read from the entire worksheet and print each cell's address and value
for cell in worksheet:
print(f"Cell {cell.AddressString} has value '{cell.Text}'")
以下は、IronXL の多様性を示す適切な表示形式での上記コードの出力です。

Excel ファイルの操作の詳細については、このコード例のページをご覧ください。
結論
結論として、Pandas とIronXL はどちらも、Python で Excel ファイルを読み取るための効率的な方法を提供します。 ただし、IronXL は、特に使いやすさ、パフォーマンス、特殊な Excel 処理機能の点で、Pandas に比べていくつかの利点があります。 IronXL の直感的な API と包括的な機能により、広範な Excel 操作タスクを必要とするプロジェクトに最適です。
さらに、IronXL は Microsoft Excel や Excel Interop などの外部依存関係の必要性を排除し、開発プロセスを簡素化し、さまざまなプラットフォーム間での移植性を向上させます。 したがって、Excel ファイル操作のための堅牢で効率的なソリューションを求める Python 開発者にとって、Pandas に比べて優れた機能と強化された機能を提供する IronXL は、好ましい選択肢として浮上します。 IronXL の詳細については、このドキュメントページをご覧ください。
IronXL では、Python プロジェクトでの機能と実現可能性をテストするための無料トライアルを提供しています。 このトライアルにより、開発者は事前に金銭的な負担をすることなく、IronXL が提供するあらゆる機能を試すことができます。 データのインポート/エクスポート タスク、レポート生成、データ分析などに IronXL をご検討の場合は、無料トライアルでそのパフォーマンスと特定の要件への適合性を評価する機会が得られます。
ライセンス オプションの詳細と無料試用版のダウンロードについては、IronXL Web サイトのライセンス ページをご覧ください。 ここでは、商用利用やサポートのオプションを含む、ライセンス条件に関する詳細情報をご覧いただけます。 IronXL を使い始めてそのメリットを直接体験するには、ここからライブラリをダウンロードしてください。

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



