欠損値補完の流れは以下の通り。各カラムの欠損値の数が表示される。指定したカラムのヒストグラムが表示される。欠損値を平均値で補完。欠損値が補完されていれば、0が表示される。各カラムの欠損値の数が表示される。指定したカラムのヒストグラムが表示される。欠損値が補完されていれば、0が表示される。各カラムの欠損値の数が表示される。指定したカラムのヒストグラムが表示される。欠損値のある行を削除する。欠損値が補完されていれば、0が表示される。Xに目的変数のカラムを除いたdata変数(つまり、説明変数)を代入。説明変数と目的変数を7:3の割合で学習データと検証データに分割。y_test_trainは学習データ、_testは検証データ用の変数。train_test_splitscikit-learnの関数。データを学習データと検証データに分割する。分割する説明変数のデータ。分割する目的変数のデータ。テストデータのサイズを全体の0.3(30%)に設定。データ分割時にシャッフルをしないように設定。デフォルトはTrue。モデリング(決定木モデル)一般的な機械学習の流れは以下の通り。決定木のインスタンスを代入。random_state=0この設定を行うことで、結果の再現性が確保できる。y_trainをfitし、d_treeを更新ている。.fit()メソッド指定された学習データを使用して、モデルの学習を行う。返り値に学習後のモデルを返す。X_testのデータを使って、目的変数を予測している。.predict()メソッド入力データに対するモデルの予測を行う。y_predの値を比較して正解率を算出。confusion_matrixという関数をインポート。混合行列を作成する用。.accuracy_score(A,B)正解率を算出するメソッド。Aに解答、Bに予測値を代入する。confusion_matrix(A,B)混合行列を作成する関数。Aに解答、Bに予測値を代入する。予測精度改善のため、再度d_treeを生成。今回はmax_depthを4に指定。混合行列の確認を行い、モデルが改善されているかどうかを確認する。max_depthの変更のほかに、min_samples_splitやmin_impurity_decreaseの値を変更しながら様子を確認してみる。F値も確認し、適切かどうか確かめる。precision_score(A,B)適合率(Positiveと予想した値のうち、実際の値がPositiveであった確率)を計算する関数。recall_score(A,B)再現率(実際にPositiveである値のうち、Positiveであると予測した確率)を計算する関数。f1_score(A,B)F値(再現率と適合率の調和平均)を計算する関数。ロジスティック回帰のライブラリをインストール。logistic_regressionにロジスティック回帰を読み込み。fit関数で学習し、logistic_regressionを更新。予測値を作成し、y_predに代入。参考にさせていただいた記事https://note.nkmk.me/python-sklearn-train-test-split/Nana2023年6月よりプログラミング学習開始。理解を深めるためにアウトプットの練習をしています。バッジを贈って著者を応援しようバッジを受け取った著者にはZennから現金やAmazonギフトカードが還元されます。バッジを贈るDiscussionNana2023年6月よりプログラミング学習開始。理解を深めるためにアウトプットの練習をしています。Proよくある質問LinksX(Twitter)GitHubメディアキットLegal利用規約プライバシーポリシ。