Создание одной переменной с несколькими категориями в R - PullRequest
0 голосов
/ 01 апреля 2019

Я работаю с опросом, который задает вопросы на основе ответа на предыдущие вопросы.Мне нужно создать одну переменную с несколькими категориями.

Пример:

(1) Do you have a bank account? Yes/No
(2) If yes: How many bank accounts do you have, <5 or >5?
(3) If >5: what is the total value? If <5, what is the value of account 1 thru 5?

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

Yes <5_value1

Yes <5_value2

Yes <5_value3

Yes <5_value4

Yes <5_value5

Yes >5_total_value

No

Как я могу сделать это в R?

Спасибо.

1 Ответ

0 голосов
/ 01 апреля 2019

Пример данных

Вы не сообщили нам, как выглядят ваши необработанные данные, поэтому я предполагаю, что они находятся во фрейме данных следующим образом:

(my_data <- data.frame(id = rep(1:3, c(3, 1, 1)),
                      has.bank.account = rep(c("yes", "no"), c(4, 1)),
                      nr.of.accounts   = rep(c(3, 6, NA), c(3, 1, 1)),
                      amount           = c(1000 * 1:3, 10000, NA)))

#   id has.bank.account nr.of.accounts amount
# 1  1              yes              3   1000
# 2  1              yes              3   2000
# 3  1              yes              3   3000
# 4  2              yes              6  10000
# 5  3               no             NA     NA

Код

Затем вы можете использовать ifelse для создания новой переменной:

with(my_data, 
     ifelse(has.bank.account == "no", 
            "no", 
            paste0("Yes ", 
                   ifelse(nr.of.accounts > 5, ">5_", "<=5_"), 
                   amount
                   )
           )
    )

# [1] "Yes <=5_1000" "Yes <=5_2000" "Yes <=5_3000" "Yes >5_10000" "no" 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...