我想爲因子x
的每個級別創建邏輯變量。如何在R中的多級因子中創建邏輯變量
x <- factor(c('apple','orange','apple','peach'))
所以我會得到每三個變量的x
長度:
apple = c(T,F,T,F)
orange = c(F,T,F,F)
peach = c(F,F,F,T)
有一個函數來做到這一點?
我想爲因子x
的每個級別創建邏輯變量。如何在R中的多級因子中創建邏輯變量
x <- factor(c('apple','orange','apple','peach'))
所以我會得到每三個變量的x
長度:
apple = c(T,F,T,F)
orange = c(F,T,F,F)
peach = c(F,F,F,T)
有一個函數來做到這一點?
試試這個。它創建這些向量的數據幀:
x <- as.factor(c('apple','orange','apple','peach'))
df <- data.frame(sapply(levels(x), function(l) l == x))
可能重複[如何創建虛擬變量](http://stackoverflow.com/q/12758075/903061)。 – Gregor
更好的可能性:[在R中生成一個虛擬變量](http://stackoverflow.com/q/11952706/903061)。 – Gregor
...從中我會推薦'model.matrix(〜x + 0)' – Gregor