変数の可視化
カテゴリ変数の可視化
# body
# ライブラリのimport
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
# 前処理
df = pd.read_csv('dataset.csv')
df["AG_ratio"].fillna(df["Alb"] / (df["TP"] - df["Alb"]), inplace=True)
df.drop_duplicates(inplace=True)
df.reset_index(drop=True, inplace=True)
#データフレームの分離
col_categoric = ["Gender", "disease"]
df_numeric = df.drop(col_categoric, axis=1)
df_categoric = df[col_categoric]
#"disease"列にdf_numericを追加
df_tmp = pd.concat([df_categoric["disease"], df_numeric], axis=1)
#グラフの表示
plt.figure(figsize=(12, 12))
for ncol, colname in enumerate(df_numeric.columns):
plt.subplot(3, 3, ncol+1)
sns.distplot(df_tmp.query("disease==0")[colname])
sns.distplot(df_tmp.query("disease==1")[colname])
plt.legend(labels=["non", "diseased"], loc='upper right')
plt.show()
# 前処理
df = pd.read_csv('dataset.csv')
df["AG_ratio"].fillna(df["Alb"] / (df["TP"] - df["Alb"]), inplace=True)
(欠損値を任意の値で置き換える作業)
※inplaceは元のデータに上書きする。
df.drop_duplicates(inplace=True)
(重複したデータを削除)
df.reset_index(drop=True, inplace=True)
(インデックスをリセットして新たに置き換える。)
#データフレームの分離
col_categoric = ["Gender", "disease"]
(カテゴリ変数のcolumnをリスト化。)
df_numeric = df.drop(col_categoric, axis=1)
(全体からカテゴリ変数を消去し、量的変数データのデータフレームを作成。)
df_categoric = df[col_categoric]
(カテゴリ変数のデータフレームを作成。)
#"disease"列にdf_numericを追加
df_tmp = pd.concat([df_categoric["disease"], df_numeric], axis=1)
(axis=1で列同士を接続。)
#グラフの表示
plt.figure(figsize=(12, 12))
(グラフのサイズを決める。)
for ncol, colname in enumerate(df_numeric.columns):
(ループ構文、ncol:位置決め、calname:カラム名)
plt.subplot(3, 3, ncol+1)
sns.distplot(df_tmp.query("disease==0")[colname])
sns.distplot(df_tmp.query("disease==1")[colname])
plt.legend(labels=["non", "diseased"], loc='upper right')
plt.show()
<出力結果>