🚀
【Pandas tips】Pandasでexcelに複数シート吐き出すTips
ソースコード
pd.ExcelWriter()
で複数シート吐き出すことができる。
with pd.ExcelWriter("output.xlsx") as writer:
df1.to_excel(writer, sheet_name='sheet1')
df2.to_excel(writer, sheet_name='sheet2')
例
irisデータセットの変数同士のピアソン相関係数、スピアマン相関係数を複数Excelに出力する。
そのままだと面白くなかったので、targetの種類ごとにピアソン相関係数、スピアマン相関係数をしている。
import pandas as pd
from sklearn import datasets
iris = datasets.load_iris()
df = pd.DataFrame(iris.data, columns=iris.feature_names)
df['target'] = iris.target_names[iris.target]
with pd.ExcelWriter("output.xlsx") as writer:
for target in set(df["target"]):
for method in ["pearson", "spearman"]:
df_corr = df.query("target == @target").corr(method)
df_corr.to_excel(writer, sheet_name=f"{target}_{method}")
Discussion