2014-02-28 117 views
3

我試圖做使用dplyr如下因素:使用dplyr創建虛擬變量

假設你有data.framey和你想的基礎上var1

y <- data.frame(var1 = rnorm(100)) 
y$var2 <- 0 
y$var2[y$var1 > 0.5] <- 1 

值來創建一個新的變量是否可以使用dplyrmutatefilter來做到這一點?

回答

4

嘗試mutate

> y <- data.frame(var1 = (-2):2) 
> y %>% mutate(var2 = as.numeric(var1 > 0.5)) 
    var1 var2 
1 -2 0 
2 -1 0 
3 0 0 
4 1 1 
5 2 1 

更新: dplyr現在使用%>%代替%.%

+1

如果什麼VAR1有缺失值? –