Учитывая два логических, категориальных фактора, как я могу получить их комбинацию как третью категорию?
> my_data <- data.frame(a = c(0, 0, 1, 1, 1),
b = c(0, 1, 0, 1, 1))
> my_data
a b
1 0 0
2 0 1
3 1 0
4 1 1
5 1 1
Я хочу добавить новую категорию с комбинацией a и b, чтобы:
> my_data
a b c
1 0 0 1
2 0 1 2
3 1 0 3
4 1 1 4
5 1 1 4
Я не хотел быть ленивым и думал об этом сам:
my_data$c <- as.numeric(as.factor(my_data$a + 1 + (my_data$b + 1) * 2))
Это близко, но я не нахожу это особенно элегантным.Поэтому, любое более приятное решение в базе R будет оценено.Есть также пакеты, подобные reshape2
, которые предлагают аналогичную функциональность.