52337
すいません。

件名の通りなのですが、  
pandas-Dataframeのcorr()で出した計算結果を、  
画像やcsvなどに落としたりすることは可能でしょうか？

（今まで計算して出された結果をコピー＆ペーストして  
自分でエクセルで表を作り直して来たのですが、  
もしかしたら簡単な方法があるのではないかと思いまして。。。）
CC BY-SA 4.0
2019-01-26T02:38:44.653
52330
2019-01-26T11:15:54.603
2019-01-26T02:47:12.400
76
31764
question
python pandas
相関係数(corr)の出力方法について
pandas.DataFrame.corr() を使っているのであれば、結果はDataFrame型となっておりますので、CSVファイルに書き出す場合は単に
`DataFrame.to_csv()` を使うとよいかと思います。

この結果を画像にするには seabornを使って、`seabor.heatmap()` に `annot=True`
パラメータをつけて、ヒートマップを生成するのがよいかと思います。

以下に簡単ではありますがサンプルを記述しましたので参考にしてみてください。

```

    import pandas as pd
    import matplotlib.pyplot as plt
    import seaborn as sns
    from sklearn.datasets import load_iris
    
    iris = load_iris()
    iris_df = pd.DataFrame(data=iris.data, columns=iris.feature_names)
    
    # 相関を求める
    iris_corr_df = iris_df.corr()
    print(iris_corr_df)
    #                   sepal length (cm)  sepal width (cm)  petal length (cm)  petal width (cm)
    #sepal length (cm)           1.000000         -0.117570           0.871754          0.817941
    #sepal width (cm)           -0.117570          1.000000          -0.428440         -0.366126
    #petal length (cm)           0.871754         -0.428440           1.000000          0.962865
    #petal width (cm)            0.817941         -0.366126           0.962865          1.000000
    
    # CSVファイルに書き出す
    iris_corr_df.to_csv('iris_corr.csv')
    
    # ヒートマップを生成
    sns.heatmap(iris_corr_df, vmax=1, vmin=-1, center=0, annot=True)
    plt.tight_layout()
    plt.savefig('iris_corr.png') #pngファイルで書き出す
    plt.show() #グラフを表示
    
```

[![画像の説明をここに入力](https://i.stack.imgur.com/DqaIY.png)](https://i.stack.imgur.com/DqaIY.png)
CC BY-SA 4.0
2019-01-26T11:15:54.603
52337
2019-01-26T11:15:54.603
24801
52330
answer