我是一名初学者R用户:
这是我的数据集。
我这样创建了一个新的变量:
如何实现以下内容:
如果factor1>=5且factor2<19且factor3等于"b"或"c"且factor4不是missing,那么newvar的值应该为1,同时如果newvar也是missing,则将其赋值为1。
最好能够指定不同的条件,因此根据几个其他变量的值,一些观测值将在变量newvar中取值1、2、3和4。
在STATA中,这非常简单直观。我想知道是否有一种在R中实现相同功能的简单直观的方法。
这是我的数据集。
factor1 <- c(1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8,8,9, 9, 10, 10)
factor2 <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,16,17, 18, 19, 20)
factor3 <- c("a", "a", "a", "a", "a", "b", "b", "b", "b", "b", "c", "c", "c", "c", "c", "d", "d", "d", "d", "d")
factor4 <- c(10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120, 130, 140, 150,160,170, 180, 190, NA)
dataset <- data.frame(factor1, factor2, factor3, factor4)
我这样创建了一个新的变量:
dataset$newvar <-"NA"
如何实现以下内容:
如果factor1>=5且factor2<19且factor3等于"b"或"c"且factor4不是missing,那么newvar的值应该为1,同时如果newvar也是missing,则将其赋值为1。
最好能够指定不同的条件,因此根据几个其他变量的值,一些观测值将在变量newvar中取值1、2、3和4。
在STATA中,这非常简单直观。我想知道是否有一种在R中实现相同功能的简单直观的方法。