Как сделать заявление ifelse с несколькими условиями - PullRequest
1 голос
/ 02 мая 2019

Я пытаюсь создать фиктивную переменную, которая сообщает мне, был ли это результат выигрышем или проигрышем со значениями 1 и 0.

Я пытался использовать оператор ifelse в одной строке, используя c (), чтобыположить все соответствующие слова в нем.Это дает мне сообщение об ошибке и не классифицирует все кортежи правильно.

game$homewin<- ifelse(game$outcome == c("home win OT",
                      "home win REG", "home win SO"), 1, 0)

Я хочу дать мне 1 в колонке $ homewin игры, когда команда хозяев выигрывает, и 0, когда команда хозяев проигрывает.Все результаты подразделяются на 6 категорий «победа хозяев ОТ», «победа хозяев РЭГ», «победа хозяев СО», «победа гостей на выезде ОТ», «победа гостей на выезде РЭГ» и «победа гостей на выезде».Я просто хочу иметь возможность создать колонку homewin, которая не будет определять тип выигрыша.

1 Ответ

1 голос
/ 02 мая 2019

Оператор %in% позволяет проверять вектор возможных значений.

game$homewin <- ifelse(game$outcome %in% c("home win OT",
                    "home win REG", "home win SO"), 1, 0)

Вы также можете воспользоваться тем, что TRUE имеет числовое представление 1 и FALSE 0 и написать:

game$homewin <- as.numeric(game$outcome %in% c("home win OT",
                    "home win REG", "home win SO"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...