Создать вектор через ifelse в R - PullRequest
0 голосов
/ 13 июня 2018

В моем глобальном окружении есть два значения, связанные со столбцами, начинающимися с Priority_, одно называется неделей, а другое - отдыхом.

Неделя может быть любым числом от 01 до 52

В то время как отдых может быть 2018, 2017, 2016.

Я создаю утверждение ifelse, что если неделя равна3, и год равен 2017, то для вывода вектора необходимо перейти к 2016 году и неделе 52. Это равно неделе = 3 и отдыху = Priority_2017

Это код Iиспользуйте для создания вектора:

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"

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация от меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...