ウェブサイト検索

Pandas read_excel() - PythonでExcelファイルを読み込む


pandasモジュールのread_excel()関数を使用して、ExcelファイルのデータをDataFrameオブジェクトに読み込むことができます。Excelシートを見ると、それは二次元の表になっています。DataFrameオブジェクトも二次元の表形式のデータ構造を表しています。

1. Pandas read_excel() の例

エクセルファイルに従業員と車の2つのシートがあるとしましょう。最上行にはテーブルのヘッダーが含まれています。

Excelファイルのシートデータ

ここでは「従業員」シートのデータを読み取り、それを印刷する例を示します。

import pandas

excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Employees')

print whole sheet data
print(excel_data_df)

出力 :

   EmpID    EmpName EmpRole
0      1     Pankaj     CEO
1      2  David Lee  Editor
2      3   Lisa Ray  Author
  • 最初のパラメータはExcelファイルの名前です。
  • sheet_nameパラメーターは、Excelファイルから読み取るシートを定義します。
  • DataFrameオブジェクトを印刷すると、出力は二次元の表になります。それはExcelシートの記録に似ています。

2. エクセルシートの列ヘッダーのリスト

データフレームオブジェクトのcolumnsプロパティを使用して、列ヘッダーのリストを取得できます。

print(excel_data_df.columns.ravel())

出力 :

['EmpID' 'EmpName' 'EmpRole']

3. 列データの印刷

私たちは列データを取得し、それを値のリストに変換できます。

print(excel_data_df['EmpName'].tolist())

出力 :

['Pankaj', 'David Lee', 'Lisa Ray']

4. Pandasのread_excel()のusecolsの例

Excelファイルから読み込む列名を指定できます。これは、Excelシートのいくつかの列にのみ興味がある場合に便利です。

import pandas

excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Cars', usecols=['Car Name', 'Car Price'])
print(excel_data_df)

出力 :

         Car Name      Car Price
0      Honda City     20,000 USD
1  Bugatti Chiron  3 Million USD
2     Ferrari 458   2,30,000 USD

5. ヘッダー行なしでExcelファイルを読み込む

Excelシートにヘッダー行がない場合は、ヘッダーパラメータの値をNoneとして渡してください。

excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Numbers', header=None)

もしヘッダー値を整数として渡すと、例えば3の場合、3行目はヘッダー行として扱われ、その次の行から値が読み取られます。ヘッダー行より前のデータは破棄されます。

6. Excelシートを辞書、CSV、およびJSONに変換する

DataFrameオブジェクトには、表形式のデータをDict、CSV、またはJSON形式に変換するためのさまざまなユーティリティメソッドがあります。

excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Cars', usecols=['Car Name', 'Car Price'])

print('Excel Sheet to Dict:', excel_data_df.to_dict(orient='record'))
print('Excel Sheet to JSON:', excel_data_df.to_json(orient='records'))
print('Excel Sheet to CSV:\n', excel_data_df.to_csv(index=False))

出力 :

Excel Sheet to Dict: [{'Car Name': 'Honda City', 'Car Price': '20,000 USD'}, {'Car Name': 'Bugatti Chiron', 'Car Price': '3 Million USD'}, {'Car Name': 'Ferrari 458', 'Car Price': '2,30,000 USD'}]
Excel Sheet to JSON: [{"Car Name":"Honda City","Car Price":"20,000 USD"},{"Car Name":"Bugatti Chiron","Car Price":"3 Million USD"},{"Car Name":"Ferrari 458","Car Price":"2,30,000 USD"}]
Excel Sheet to CSV:
 Car Name,Car Price
Honda City,"20,000 USD"
Bugatti Chiron,3 Million USD
Ferrari 458,"2,30,000 USD"

7. 参考文献

  • pandas read_excel() API ドキュメント

関連記事: