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 件のコメント:
コメントを投稿