2016-11-29 3 views
0

ほとんど説明できない特定のことについては、ヘルプが必要です。 次のコードダミーを使用した1つのホットエンコーディングR

library(dummies) 
columna <- c(1,2,3) 
columnb <- c("AR","AT","AF") 
columnc <- c("word1", "word2", "word3") 
alldata <- data.frame(columna,columnb,columnc) 
alldata <- dummy.data.frame(alldata, names=c("columnc"), sep="_") 
alldata 

は私が

columnc <- c("word1", "word2 word3", "word3 word1") 

を持って、今想像してくれ

columna columnb columnc_word1 columnc_word2 columnc_word3 
1  1  AR    1    0    0 
2  2  AT    0    1    0 
3  3  AF    0    0    1 

を与えている誰かが取得する方法を私に説明していただけますか?ここで

columna columnb columnc_word1 columnc_word2 columnc_word3 
1  1  AR    1    0    0 
2  2  AT    0    1    1 
3  3  AF    1    0    1 

よろしく、

答えて

1

tidyverse方法です:

library(tidyverse) 
alldata %>% 
     separate_rows(columnc) %>% mutate(count = 1) %>% 
     spread(columnc, count, fill = 0, sep = "_") 

# columna columnb columnc_word1 columnc_word2 columnc_word3 
#1  1  AR    1    0    0 
#2  2  AT    0    1    1 
#3  3  AF    1    0    1 
関連する問題