Запись нескольких значений в R? - PullRequest
2 голосов
/ 30 марта 2020

Это мой первый пост, поэтому я буду благодарен за любую помощь!

Я перекодирую переменную в SPSS:

RECODE income(60, 61, 62, 63 = 200) INTO income_2.
EXECUTE.

CROSSTABS income_2 by income.

Пока я пробовал следующее но я не получаю никакого разумного результата:

income2019$income_2 <- dplyr::recode(income2019$income_2, '60:63' = 200L)

CrossTable(income2019$income_2, income2019$income)

Кросс-таблица R производит огромные возможности - я предполагал, что она выдаст выбранную переменную дохода_2 по выходу переменной дохода.

Спасибо :)

Ответы [ 2 ]

1 голос
/ 30 марта 2020

Вместо recode мы можем replace

income2019$income_2[income2019$income_2 %in% 60:63] <- 200L
0 голосов
/ 30 марта 2020
income2019 <- data.frame(income = c(60, 61, 62, 63))
income2019$income2 <- income2019$income
income2019$income2[income2019$income2 %in% c(60, 61, 62, 63)] <- 200
income2019
#   income income2
# 1     60     200
# 2     61     200
# 3     62     200
# 4     63     200

# cross tabulate to get frequency
table(income2019$income2, income2019$income)
#     60 61 62 63
# 200  1  1  1  1

Вы также можете использовать xtabs для перекрестной классификации факторов. Я не уверен, каков ваш ожидаемый результат.

xtabs(formula = income2 ~ income, data = income2019)
...