Объяснение преобразования меток факторных переменных в числа c с такими же значениями меток? - PullRequest
0 голосов
/ 08 июля 2020

Использование библиотеки ISLR и набора данных.

library(tidyverse)
library(ISLR)
data("Default")

Замена «Нет» на 0 и «Да» на 1 для переменных по умолчанию и студента

DF1 <- Default %>% 
  select(default, student) %>% 
  mutate(default = factor(default, labels = c("No" = 1, "Yes" = 10)),
         student = factor(student, labels = c("No" = 1, "Yes" = 10)))

преобразование переменных в numeri c

DF2 <- DF1 %>% 
  mutate(default = as.integer(default),
         student = as.numeric(student))

Результат показан ниже.

> head(DF2)  

  default student
1       1       1
2       1       2
3       1       1
4       1       1
5       1       1
6       1       2

При преобразовании в numeri c введите эти 0, 1 значения в коде 1,2 et c.

Я получил ТАК ответ здесь. Как преобразовать множитель в целое число \ numeri c без потери информации?

DF2 <- DF1 %>% 
  mutate(default = as.integer(levels(default))[default],
         student = as.numeric(levels(student))[student])
> head(DF2)  

  default student
1       0       0
2       0       1
3       0       0
4       0       0
5       0       0
6       0       1

Не могли бы вы немного пояснить утверждение

as.numeric(levels(student))[student])  

Почему приведенная ниже инструкция не дает желаемого результата?

as.numeric(as.factor(student))

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...