Python3のPandasライブラリでDataFrame形式のデータをExcelで出力する方法を調べたので、実際にExcelで出力するまでの手順をまとめておく。
環境は以下の通り。
Excelファイルへの保存には、Pandasの他にExcelを作成するためのPythonライブラリが必要で、まずはopenpyxlをpipでインストールする。
テスト用のDataFrameを作成する。
※乱数を使っているので実行する度に数値は異なる。
Excelへの出力はPandasのto_excelというメソッドを使う。
平均、標準偏差などの統計量をまとめて計算するdescribeや相関を求めるcorrも結果はDataFrame形式なので、同様にExcelに出力可能。
以下のようなExcelが作成される。
環境は以下の通り。
Excel作成ライブラリのインストール
Excelファイルへの保存には、Pandasの他にExcelを作成するためのPythonライブラリが必要で、まずはopenpyxlをpipでインストールする。
DataFrameの準備
テスト用のDataFrameを作成する。
import pandas as pd import numpy as np # 0-9の乱数で配列データ作成 values = np.random.randint(10, size=(10, 3)) # DataFrame作成 df = pd.DataFrame(values, columns=['x', 'y', 'z']) print(df)
※乱数を使っているので実行する度に数値は異なる。
DataFrameをExcelへ出力する
Excelへの出力はPandasのto_excelというメソッドを使う。
import pandas as pd import numpy as np # 0-9の乱数で配列データ作成 values = np.random.randint(10, size=(10, 3)) # DataFrame作成 df = pd.DataFrame(values, columns=['x', 'y', 'z']) # ファイル名test.xlsxでExcelファイル作成 writer = pd.ExcelWriter('test.xlsx') # DataFrameをsheetシートに出力 df.to_excel(writer, 'sheet') # Excelファイルの保存 writer.save()
平均、標準偏差などの統計量をまとめて計算するdescribeや相関を求めるcorrも結果はDataFrame形式なので、同様にExcelに出力可能。
import pandas as pd import numpy as np # 0-9の乱数で配列データ作成 values = np.random.randint(10, size=(10, 3)) # DataFrame作成 df = pd.DataFrame(values, columns=['x', 'y', 'z']) # ファイル名test.xlsxでExcelファイル作成 writer = pd.ExcelWriter('test.xlsx') # DataFrameをsheet1シートに出力 df.to_excel(writer, 'sheet1') # 平均、標準偏差などの統計量をsheet2シートに出力 df.describe().to_excel(writer, 'sheet2') # 相関をsheet3シートに出力 df.corr().to_excel(writer, 'sheet3') # Excelファイルの保存 writer.save()
以下のようなExcelが作成される。



0 件のコメント:
コメントを投稿