有人可以帮助我使用ifelse
。
我有data.frame
(dat),其分类变量/因子称为Q1(dat$Q1
)。 dat$Q1
被编码为1,2,3或4.我需要根据以下规则创建新列data$new1
:
如果dat$Q1==3
则dat$new1
应该获得新代码1.否则,dat$new1
将被赋予代码0。
请问最有效的方法是什么?
谢谢
答案 0 :(得分:4)
只是:
dat$new1 <- 0+(dat$Q1==3) # or use as.numeric(.)
答案 1 :(得分:3)
使用ifelse
,如下所示:
dat$new1 <- ifelse(dat$Q1==3, 1, 0)