在R中通过ifelse创建向量

时间:2018-06-13 13:53:23

标签: r if-statement vector

我的全局环境中有两个值与起始优先级相关的列相关,一个称为星期,一个称为休息。

周可以是01到52之间的任何数字

休息时间可以是2018年,2017年,2016年。

我创建了一个ifelse声明,如果一周等于3且年份等于2017,那么矢量输出需要转到2016年和第52周。这等于周= 3和休息= Priority_2017

这是我用来创建矢量的代码:

test<-function(year){
  c(paste0(rest, seq(week, by = -1, length.out=3)),paste0(year,52))  
}

然后因为2017年之前是2016年,我输入:

test("Priority_2016")

给出输出:

[1] "Priority_20173"  "Priority_20172"  "Priority_20171"  "Priority_201752"

我想将此添加到ifelse语句中,因为休息和周将会改变,我尝试使用以下代码:

test<-function(year){
  ifelse((rest %in% c("Priority_2018", "Priority_2017","Priority_2016") & week ==3), c(paste0(rest, seq(week, by = -1, length.out=3)),paste0(year,52)),0)
  }

但是当我输入时:

    test("Priority_2016")

这只输出:

[1] "Priority_20173"

如果您需要我提供更多信息,请与我们联系。

0 个答案:

没有答案