使用dplyr创建虚拟变量

Dan*_*bel 3 r dplyr

我正在尝试使用以下方式dplyr:

假设你有,data.frame y并且你想根据的值创建一个新的变量var1

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

是否有可能使用dplyr's mutatefilter

G. *_*eck 5

试试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
Run Code Online (Sandbox Code Playgroud)

更新: dplyr现在用来%>%代替%.%