Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Dummiesパッケージ

11,689 views

Published on

Tokyo.Rの42回にて、かんたんにダミー変数がつくれるパッケージを試してみた

Published in: Data & Analytics
  • Be the first to comment

Dummiesパッケージ

  1. 1. dummiesパッケージ 1 @weda_654
  2. 2. 自己紹介  Twitter ID : @weda_654  勤務先: Google MapとAWSの会社  お仕事: データ分析をやっています 2 (社会人1年目)  近況: 会社の自分の席が正式になくなる (デスクレス)
  3. 3. dummiesパッケージをつかうと 概要 かんたんにダミー変数がつくれるらしいから とりあえず使ってみた 3
  4. 4. ダミー変数とは 4  ある1個の変数がm個のカテゴリーを持つとき,これ をm個の変数D1,D2,…,Dmで表したもの.  例: 血液型 A,B,O,ABの4つのカテゴリー ↓ 変数A,変数B,変数O,変数ABの4つの変数 (変数A,変数B,変数Oの3つの変数でも表現は可能)
  5. 5. いままでのダミー変数作成 data.frameから対象ベクトルを抜き出す なんやかんやする data.frameに結合+列名の修正 _人人人人人人人_ > めんどい! <  ̄Y^Y^Y^Y^Y^Y ̄ 5
  6. 6. なんやかんや 6 tmp <- function(vec){ result <- NULL items <- unique(vec) for(i in items){ dummy <- ifelse(vec %in% i, 1, 0) result <- cbind(result, dummy) } return(result) }
  7. 7. dummy関数  ベクトルからダミー変数を生成 install.packages(“dummies”) library(dummies) blood <- c("A", "AB", "B", "A", "O", "A") d.blood <- dummy(blood) 表1 : 実行結果 bloodA bloodAB bloodB bloodO 1 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 1 1 0 0 0 7
  8. 8. dummy.data.frame関数(1)  data.frame内の質的変数(文字列・順序なし因子)列 からダミー変数を生成  irisデータで試してみる • irisデータには質的変数Speciesがある d.iris <- dummy.data.frame(iris, sep=“:”) rdm <- sample(1:nrow(d.iris), 10) d.iris[rdm, ] 8
  9. 9. dummy.data.frame関数(2) 表2 : ダミー変数を追加したirisデータ Sepal.Length Sepal.Width Petal.Length Petal.Width Species:setosa Species:versicolor Species:virginica 5 3.3 1.4 0.2 1 0 0 4.9 2.4 3.3 1 0 1 0 5 2.3 3.3 1 0 1 0 5.5 2.6 4.4 1.2 0 1 0 5.6 2.8 4.9 2 0 0 1 6.7 3 5.2 2.3 0 0 1 6 2.7 5.1 1.6 0 1 0 5.4 3 4.5 1.5 0 1 0 6.7 2.5 5.8 1.8 0 0 1 5.7 3 4.2 1.2 0 1 0  生成→結合(置換)をひとまとめにできる 9
  10. 10. get.dummy, which.dummy  get.dummy • 生成したダミー変数を表示する  which.dummy • 生成したダミー変数の列番号を表示する 10
  11. 11. 11 より良いダミー変数生成ライフ?を もっとイケてる生成方法があったら 教えて下さい!

×