R 使用if/else语句为时间序列分配虚拟变量?

R 使用if/else语句为时间序列分配虚拟变量?,r,R,我有一列日期,是一年一次的格式。我需要使用一个伪变量基于它们创建一个列,其中2008年的日期等于1,否则为0。我会用excel中的惰性方法来做,但需要用R来做。制作这类变量最简单的方法是什么 我尝试了if/else语句,但始终无法获得正确的语法。引用的数据文件称为数据,yearmon列称为日期,创建的伪变量称为衰退 提前感谢您。请尝试以下方法 ## generating some data data <- data.frame(DATE =seq(as.Date('2008-01-01')

我有一列日期,是一年一次的格式。我需要使用一个伪变量基于它们创建一个列,其中2008年的日期等于1,否则为0。我会用excel中的惰性方法来做,但需要用R来做。制作这类变量最简单的方法是什么

我尝试了if/else语句,但始终无法获得正确的语法。引用的数据文件称为数据,yearmon列称为日期,创建的伪变量称为衰退

提前感谢您。

请尝试以下方法

## generating some data
data <- data.frame(DATE =seq(as.Date('2008-01-01'), as.Date('2009-12-31'), 30))

## Creating the RECESSION variable 
data$RECESSION <- ifelse(grepl(pattern = '2008',  data$DATE), 1, 0)


我们也可以在没有
ifelse

data$RECESSION <- +(grepl(pattern = '2008',  data$DATE))

data$谢谢,就这样。非常感谢。
data$RECESSION <- +(grepl(pattern = '2008',  data$DATE))
data <- data.frame(DATE =seq(as.Date('2008-01-01'), 
        as.Date('2009-12-31'), 30))