Upgrade to Pro — share decks privately, control downloads, hide ads and more …

【アップロードテスト】データマイニング入門編_201501 / test_slide_data_mining

stkdev
January 01, 2015

【アップロードテスト】データマイニング入門編_201501 / test_slide_data_mining

【アップロードテストを兼ねてます】

【slideshareからのお引越しです】
https://www.slideshare.net/takosumipasta/201501-44216379

某所で実施したR言語/データマイニング超入門用資料。

stkdev

January 01, 2015
Tweet

More Decks by stkdev

Other Decks in Science

Transcript

  1. Index ☆データに対するアプローチ方法の紹介 1. R言語について 2. 利用するデータ 3. データマイング入門 3.1 可視化

    (グラフ化) 3.2 データ同士の関係 (相関) 3.3 関係のモデル式化 (回帰) 3.4 データの分類 (クラスター分析) 3.5 データの判別 (判別) 2
  2. 2. 利用するデータ • 今回利用するサンプル – 人体寸法データベース1997-98 より抜粋 • [https://www.dh.aist.go.jp/database/97-98/] –

    年齢/身長/体重etc.のデータ約300人分 No 性別 年齢 体重 身長 ウエスト 足長 手長 1 M/F xx.x [歳] xx.x [kg] xxxx [mm] xxx [mm] xxx [mm] xxx[mm] 5
  3. 3. データマイニング入門 可視化 • まずはデータを見てみる データ指定いろいろ data[1,] #1行目 data[,2] #2列目

    data$身長 #身長列 data[3:5,c(2,4)] #3~5行目の2列と4列 data[data$身長>1750,] #身長が1750mm以上のデータ 7
  4. 3. データマイニング入門 可視化 • 演習 グラフ化してみましょう #おまじない #欠損値が含まれる行を除く data<-na.omit(data) #グラフ化

    plot(“データ列1”, “データ列2”) #身長と体重のグラフが作りたければ plot(data$体重, data$身長) #これだけ 9
  5. 3. データマイニング入門 相関 • 演習 相関を計算する #計算するって言っても… #相関係数 cor(“データ列1”, “データ列2”)

    #手長と足長 cor(data$手長, data$足長) #これだけ http://www.logi-solu.co.jp/article/13862014.html 11
  6. 3. データマイニング入門 線形回帰分析 • データの傾向を数式化(モデル化)す ることを考える 何がうれしいの? ✓ データの傾向がわかる ✓

    一方のデータから他方を推測できる 直線式で表す 線形回帰分析をやってみる y = ax + b エクセルでよくやるあれ。 近似線の追加 13
  7. 3. データマイニング入門 線形回帰分析 • sample2.Rを実行 – 手の長さと足の長さの関係性 回帰の仕組み 直線と点が距離が近くなるように線を引く #回帰分析

    result<-lm(手長~足長, data=sub) #回帰直線を描画 abline(result,col=2) #結果確認 summary(result) 書き方 手長~足長 “手長”を”足長”で説明する “手長” = a * “足長” + b 14
  8. 3. データマイニング入門 線形回帰分析 • 回帰結果の考察 本来は R-squared : 決定係数 Pr(>|t|)

    : P値 などを見て回帰の妥当性 をみるのですが… 今回は省略! 15
  9. 3. データマイニング入門 クラスター分析 • 思っていたようなクラスタに 分かれない – 単純に数値計算で見るとこ うなります –

    こういう分類やパターン認 識は人間の脳が非常に賢い そうは言っても、分けられないと仕事にならない! ・クラスタリング手法を変える? ・データはそのままの数値を使っていいの? ・他の情報も入れる? 21
  10. 3. データマイニング入門 クラスター分析 • 思っていたようなクラスタに 分かれない – 単純に数値計算で見るとこ うなります –

    こういう分類やパターン認 識は人間の脳が非常に賢い そうは言っても、分けられないと仕事にならない! ・クラスタリング手法を変える? ・データはそのままの数値を使っていいの? ・他の情報も入れる? データマイニング中級編をお楽しみに 22
  11. 3. データマイニング入門 判別分析 • 身長と体重のデータ 青:男性 赤:女性 [身長:175cm 体重:65kg] このデータは

    どっちに当てはまる? 既知のデータの傾向を考えると きっと「男性」だろう 青:男性 赤:女性 25
  12. 3. データマイニング入門 判別分析 • とりあえず結果を出す #判別分析 ret<-lda(性別~.,data=train) #テストデータを適用し、結果を検証 pre<-predict(ret,test) #集計

    table(test$性別,pre$class) trainを使って判別基準を作る 判別基準にtestを当てはめ 判別結果と実際の性別を集計 してみる F M F 37 15 M 12 41 判別結果 実 際 正解率75%ぐらい 27