Generated by Bing Image Creator: Beautiful long view of wild forest, many sunflowers, blue sky and white cloud, photo
の続きです。
しばらく回帰分析をしていたので、今回は気分を変えてclassificationをやってみましょう。
df_rawのデータフレームには、pref_codeという変数があって、北海道が1、沖縄が47と北から南に番号が割り振られていいますので、1~16, 17~32, 33~47の3つにグループに分けて、この3グループをclassificationしてみましょう。
まず、3つのグループを作ります。
このように、mutate()関数の中で、case_when()関数を使います。
ちゃんとできているかみてみましょう。
oneは1~16, twoは17~32, threeは33~47と上手く分けることができました。
このdf_groupをdf_meanに合体させます。
うまくいきました。group_nameをpc_mean ~ hobby_meanの5つの変数を使って分類してみましょう、ということです。分類の手法はいくつかありますが、まずは、knnでやってみましょう。FNNパッケージのknn()関数を使ってみたいと思います。
それでは、knn()関数を使ってみます。
今回はトレーニングのデータとテストのデータを同じにしています。
knnでの分類の正解率はどのくらいでしょうか?
上の表の10, 10, 8 の対角線の値が正解の数です。
正解率は、(10 + 10 + 8) / 47 = 59.6% でした。
デタラメだったら正解率は33.3% ですから、倍くらいの正解率ですね。
今回は以上です。
次回は、
です。
初めから読むには、
です。