前回の記事では
クラス変数を利用し csvデータを読み込む
outputフォルダを作成する
方法でoutputフォルダを作成しました
前回の記事の続きです
outputにpre_dataフォルダ作成 makedirs で深い階層まで作成します
#outputにpre_dataフォルダ作成 makedirs で深い階層まで作成できる
def make_pre_data():
data_dir_out="./output/pre_data"
if not os.path.exists(data_dir_out):
os.makedirs(data_dir_out)
print("make_pre_data_new")
return data_dir_out
data_dir_pre_out=make_pre_data()
EDA解析結果を入れれる フォルダを作成できました
EDA解析も実施していこうと思います
EDA_Analysis解析を実施する関数を作成しました
def EDA_Analysis(indexNames):
#outputにEDA_dataフォルダ作成 makedirs で深い階層まで作成できる
data_dir_out="./output/EDA_data"
if not os.path.exists(data_dir_out):
os.makedirs(data_dir_out)
print("make_new")
#EDA解析
data=indexNames
# pandas "D_h"のカラムをグループ化
class_group = data.groupby("D_h")
# カラムが全表示できるようにオプションを指定(notebook)
pd.options.display.max_columns = None
# 全クラスの統計量表示
class_group.describe()
data.hist(figsize=(20,10))
#グラフが重ならないようにする
plt.tight_layout()
class_group = data.groupby("D_time")
class_group["target"].hist(alpha=0.7)
#data_dirフォルダに図の保存
plt.savefig(data_dir_out+"/class_group.png")
plt.show()
# 全てを表示させる
plt.figure(figsize=(20,10))
for n, name in enumerate(data.columns.drop("D_time")):
plt.subplot(4,4,n+1)
class_group[name].hist(alpha=0.7)
plt.title(name,fontsize=13,x=0, y=0)
plt.legend([3,3.5,4,4.5,5])
#data_dirフォルダに図の保存
plt.savefig(data_dir_out+"/D_time_hist"+"all"+".png")
#図をリセット
plt.figure()
class_group = data.groupby("D_time")
class_group["target"].hist(alpha=0.7)
plt.legend([3,3.5,4,4.5,5])
#data_dirフォルダに図の保存
plt.savefig(data_dir_out+"/D_time_hist.png")
plt.show()
#図をリセット
plt.figure()
df_corr = df_corr = data.corr()
print(df_corr)
# ヒートマップを出力
sns.heatmap(df_corr)
data2=data.dropna()
#data_dirフォルダに図の保存
plt.savefig(data_dir_out+"/heatmap.png")
plt.show()
EDA_Analysis(merge_data)