statepipyの日記

興味のある分野(統計、疫学、機械学習、品質管理、手料理)と、PCスキルの維持を目的に書き続けます!

相関係数のヒートマップ表示

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

plt.figure(figsize=(10,8))
sns.heatmap(df.corr(), vmin=-1.0, vmax=1.0, annot=True, cmap='coolwarm', linewidths=0.1)

* sns.heatmap()
  →seabornライブラリのheatmap関数を呼出し
* vmin, vmaxオプション
  →最小値と最大値の指定
* annot=Trueオプション
  →色付きのセルの中に相関係数の数値を表示
* cmap, linewidthsオプション
  →見た目を調整するためのそれぞれ塗り色のパターンとセル間の線の太さを指定
* 塗り色のパターンは color example code: colormaps_reference.py - Matplotlib 2.0.2 documentationから選択可能

目的変数のクラスごとのデータ抽出

目的変数(質的変数)のクラス毎のデータ抽出

#データフレームの再帰代入
df[df["質的変数名"] == 0]

#query関数を使う
df.query("質的変数名 == 0")


#連続変数を質的変数のカテゴリ(0/1)の場合に分ける
df1 = df.query("質的変数==0")["連続変数"]
df2 = df.query("質的変数==1")["連続変数"]

# データフレームA (名義尺度)
df1 = df[変数名]

# データフレームB(連続尺度のみ残す)
df2 = df.drop(df1, axis=1)       # ←axis=1 は列の削除

#両者のを横(列)で横結合する
df_both = pd.concat([df1, df2], axis=1)

   * 項目を絞る場合 → df1["●●●●●"]