データをExcelファイルにエクスポートすることは、通常、どのユーザーにとっても、与えられたデータセットを読み、解釈するための最も好ましい、便利な方法です。
Pandasライブラリを使用することで、Webスクレイピングやその他の収集したデータをPythonコードでExcelファイルにエクスポートすることが可能です。
PandasのデータフレームをExcelに変換する手順
以下のステップバイステップのチュートリアルに従って、PandasのDataFrameをExcelファイルに書き出す方法を学びましょう。
この記事もチェック:Pandasのデータフレームに行を追加する5つの簡単な方法
ステップ1:pandasとopenpyxlのインストール
pandasのデータフレームをエクスポートする必要があるため、pandasパッケージがすでにインストールされている必要があります。
もし、インストールされていない場合は、以下のpipコマンドを実行して、Pandas pythonパッケージをコンピュータにインストールします。
pip install openpyxl |
PythonでExcelファイルの関数を扱うには、以下のpipコマンドを使用してopenpyxlモジュールをインストールする必要があります。
pip install openpyxl |
データフレームをExcelファイルに書き出すには、シート名を指定する必要はありません。
以下はその手順です。
この記事もチェック:Pythonのxlrdモジュールを使ってExcelのファイルを読み込む方法
ステップ2:DataFrameの作成
- Python コード/スクリプトファイル内で Pandas パッケージをインポートします。
- エクスポートしたいデータのDataFrameを作成し、行と列の値でDataFrameを初期化します。
Pythonのコードです。
#import pandas package import pandas as pd
# creating pandas dataframe df_cars = pd.DataFrame({ 'Company' : [ 'BMW' , 'Mercedes' , 'Range Rover' , 'Audi' ],
'Model' : [ 'X7' , 'GLS' , 'Velar' , 'Q7' ],
'Power(BHP)' : [ 394.26 , 549.81 , 201.15 , 241.4 ],
'Engine' : [ '3.0 L 6-cylinder' , '4.0 L V8' , '2.0 L 4-cylinder' , '4.0 L V-8' ]})
|
この記事もチェック:Pandasで空のDataFrameを作成する方法を解説する
Step 3: Writer オブジェクトを作成し、Excel ファイルにエクスポートします。
- Excel Writer オブジェクトを作成します。pandas パッケージの ExcelWriter() メソッドを使用して Excel Writer オブジェクトを作成します。
- 出力するExcelファイルの名前を入力し、拡張子をつけてDataFrameを書き出します。(この例では、出力するExcelファイルの名前を ‘converted-to-excel.xlsx’ としました。)
# creating excel writer object writer = pd.ExcelWriter( 'converted-to-excel.xlsx' )
|
- Excel Writerを引数としてDataFrameに対してto_excel()関数を呼び出すと、指定した拡張子を持つExcelファイルにデータが書き出されます。
- ライタオブジェクトを保存して、Excelファイルを保存します。
# write dataframe to excel df_cars.to_excel(writer) # save the excel writer.save() print ( "DataFrame is exported successfully to 'converted-to-excel.xlsx' Excel File." )
|
代替案 – 直接アプローチ
以下のコードに示すように、ExcelWriterオブジェクトを使用せずに、データフレームを直接Excelファイルにエクスポートすることで、直接的にアプローチすることができます。
import pandas as pd
# creating pandas dataframe from dictionary of data df_cars = pd.DataFrame({ 'Company' : [ 'BMW' , 'Mercedes' , 'Range Rover' , 'Audi' ],
'Model' : [ 'X7' , 'GLS' , 'Velar' , 'Q7' ],
'Power(BHP)' : [ 394.26 , 549.81 , 201.15 , 241.4 ],
'Engine' : [ '3.0 L 6-cylinder' , '4.0 L V8' , '2.0 L 4-cylinder' , '4.0 L V-8' ]})
#Exporting dataframe to Excel file df_cars.to_excel( "converted-to-excel.xlsx" )
|
Excelファイルの出力
Excelファイルを開くと、インデックス、列ラベル、行データがファイルに書き込まれているのが見えます。
ボーナスチップ
python dataframeをExcelファイルにエクスポートした場合、Excelファイル名の制御だけにとどまらず、pandasパッケージにはカスタマイズ可能な多くの機能があります。
エクセルファイルのシート名を変更することができます。
df.to_excel( "output.xlsx" , sheet_name = 'Sheet_name_1' )
|
Excelライターを使用して既存のExcelファイルに追加する
pd.ExcelWriter( 'output.xlsx' , mode = 'a' )
|
その他、レンダリングエンジン、開始行、ヘッダー、インデックス、セルのマージ、エンコーディングなど、様々なオプションがあります。
すべてのオプションについて、詳しくはPandasの公式ドキュメントをご覧ください。
この記事もチェック:Pandasのdataframeでインデックスをカラム(列、行)に変換する方法
まとめ
Pandasのデータフレームを手元のライブラリを使ってExcelにエクスポートする方法を理解していただけたと思います。
今後もPythonをフォローして、面白いチュートリアルを見つけてください。