Вы можете использовать ifelse
операторы:
ОБРАЗЦЫ ДАННЫХ :
set.seed(111)
df <- data.frame(
Q1 = sample(1:3, 10, replace = T),
Q2 = sample(1:4, 10, replace = T),
Q3 = sample(1:3, 10, replace = T)
)
РЕШЕНИЕ :
df$Q1_new <- ifelse(df$Q1==1, "Yes",
ifelse(df$Q1==2, "No", "Maybe"))
df
Q1 Q2 Q3 Q1_new
1 2 1 3 No
2 3 1 1 Maybe
3 3 2 3 Maybe
4 3 4 3 Maybe
5 1 3 1 Yes
6 3 4 3 Maybe
7 1 2 1 Yes
8 3 2 1 Maybe
9 2 1 3 No
10 1 4 1 Yes
И продолжить таким же образом для Q2
и Q3
:
df$Q2_new <- ifelse(df$Q2==1, "All the time",
ifelse(df$Q2==2, "Some of the time",
ifelse(df$Q2==3, "Rarely", "Never")))
df$Q3_new <- ifelse(df$Q3==1, "6 hours",
ifelse(df$Q3==2, "7 hours", "8 hours"))
df
Q1 Q2 Q3 Q1_new Q2_new Q3_new
1 2 1 3 No All the time 8 hours
2 3 1 1 Maybe All the time 6 hours
3 3 2 3 Maybe Some of the time 8 hours
4 3 4 3 Maybe Never 8 hours
5 1 3 1 Yes Rarely 6 hours
6 3 4 3 Maybe Never 8 hours
7 1 2 1 Yes Some of the time 6 hours
8 3 2 1 Maybe Some of the time 6 hours
9 2 1 3 No All the time 8 hours
10 1 4 1 Yes Never 6 hours