Pythonでエクセルファイルをシート別の3次元リストに変換する方法
エクセルファイルはビジネスやデータ分析の現場で頻繁に使用されますが、Pythonを使ってエクセルファイルを効率的に処理する方法を知っていると大変便利です。この記事では、Pythonを使用してエクセルファイルを読み込み、各シートをシート別の3次元リストに変換する方法を紹介します。
1. ライブラリのインポート
まず初めに、pandas
ライブラリを使用してエクセルファイルを読み込みます。pandas
はデータ分析に広く使用されるライブラリで、エクセルデータを効果的に処理するための機能が豊富に揃っています。
import pandas as pd
2. エクセルファイルの読み込み
pandas
を使用してエクセルファイルを読み込みます。ファイルのパスやURLを指定することで、データを取得することができます。
excel_file_path = 'path/to/your/excel/file.xlsx' excel_data = pd.read_excel(excel_file_path, sheet_name=None)
上記のコードでは、sheet_name=None
としています。これにより、すべてのシートのデータが辞書型として読み込まれます。各シートは辞書のキーとして格納されます。
3. シート別の3次元リストに変換
各シートのデータを3次元リストに変換します。各シートのデータはpandas
のvalues
プロパティを使用してNumPy配列に変換できます。
excel_3d_list = [] for sheet_name, sheet_data in excel_data.items(): sheet_list = sheet_data.values.tolist() excel_3d_list.append((sheet_name, sheet_list))
これにより、excel_3d_list
には各シートの名前と3次元リストが格納されたタプルが含まれます。
4. 完成したコード
最終的なコードは以下のようになります。
import pandas as pd # エクセルファイルのパス excel_file_path = 'path/to/your/excel/file.xlsx' # エクセルファイルの読み込み excel_data = pd.read_excel(excel_file_path, sheet_name=None) # シート別の3次元リストに変換 excel_3d_list = [] for sheet_name, sheet_data in excel_data.items(): sheet_list = sheet_data.values.tolist() excel_3d_list.append((sheet_name, sheet_list)) # 結果の表示 for sheet_name, sheet_list in excel_3d_list: print(f"Sheet: {sheet_name}") print(sheet_list) print()
5. まとめ
この記事では、pandas
を使用してエクセルファイルをシート別の3次元リストに変換する方法を解説しました。これにより、エクセルデータをPythonで効果的に処理し、データ分析や加工作業をスムーズに進めることができます。ぜひこれを参考にして、自分のプロジェクトや業務に活かしてみてください。