Можно ли использовать оператор ifelse со строками? - PullRequest
0 голосов
/ 09 ноября 2018

Я пытаюсь прочитать столбец, и, если я найду подходящую строку, напишите новое значение в новый столбец. Код, с которым я начал играть, выглядит так

crime_dd$Offense_Cond <- ifelse(crime_data$Offense = 'TMVP','TFMV','MVTHFT','AUTOTH', "AUTO THEFT", "OTHER")

Это не работает. Я пытался использовать% в%, но я, вероятно, использую его неправильно, если он вообще работает в операторах ifelse. У кого-нибудь есть элегантное решение, кроме использования astr_replace?

1 Ответ

0 голосов
/ 09 ноября 2018

Мы можем использовать %in% для вектора значений, т.е. для создания вектора из нескольких строк, используйте c()

ifelse(crime_data$Offense %in% c('TMVP','TFMV','MVTHFT','AUTOTH'), 
        "AUTO THEFT", "OTHER")

ПРИМЕЧАНИЕ: в сообщении ОП есть опечатка для ==

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