невозможно условно переоценить переменную - PullRequest
0 голосов
/ 09 июля 2019

Поэтому я пытаюсь условно переоценить символы в столбце (пример: если значение равно «1», измените его на «предварительная обработка», если это «2» - «последующая обработка».

Я исследовал это онлайн, и похоже, что

simon$Session <- revalue(simon$Session, c("1" = "pre", "2" = "post"))

должно работать нормально, но вместо этого я получаю эту ошибку

Error in revalue(simon$Session, c(`1` = "pre", `2` = "post")) : 
  x is not a factor or a character vector

У меня загружена библиотека plyr.

Это кажется очень простой проблемой, но мне почему-то трудно понять, в чем проблема. Спасибо!

1 Ответ

0 голосов
/ 09 июля 2019

Похоже, simon$Session не является фактором или вектором символов.Глядя на документацию ?revlalue, мы видим, что функция работает только с символами и векторами.

Попробуйте сделать

revalue(as.character(simon$Session), c(`1` = "pre", `2` = "post"))

Альтернативой является использование recode из dplyr.

simon %>% mutate(value = recode(Session,`1` = "pre", `2` = "post"))
...