Я пытаюсь понять, как использовать один и тот же фактор «отображения» для более чем одного столбца.
Например, вот набор данных воображаемых теннисных матчей, в которых один игрок был фаворитом а другой игрок был аутсайдером:
df <- tribble(
~game, ~favorite, ~underdog,
#-----|----------|----------
1, "Mary", "Susan",
2, "Susan", "John",
3, "Mary", "Joe",
4, "Joe", "Dave",
5, "Susan", "Dave"
)
Обратите внимание, что есть фавориты, которые никогда не уступают (Мэри), и аутсайдеры, которые никогда не являются фаворитами (Джон, Дейв).
Я бы нравится создавать фактор, который работает как для любимых и проигравших столбцов. Например, если я сейчас ввожу
df %<>% mutate(favorite=factor(favorite))
, то Джо равен 1, Мэри - 2, а Сьюзен - 3, поскольку по умолчанию используется алфавитный порядок.
Как я могу изменить проигравшего столбец фактора, так что каждый раз, когда Джо появляется там, ему назначают 1, Мэри получает 2, и так далее?
Мои требования / надежды / желания:
- На практике будет много строк и разных записей, поэтому ручное кодирование не вариант;
- I я хотел бы иметь возможность делать это в середине цепочки, с каналами;
- В конце я хотел бы иметь возможность запускать код, подобный
filter(favorite=="Susan" | underdog=="Susan")
.
Я посмотрел, но не смог найти, где это было сделано раньше. Любая помощь будет оценена.