Почему я получаю сообщение об ошибке в `[.data.frame` (data,, model.list $ variable): в R выделены неопределенные столбцы? - PullRequest
1 голос
/ 03 мая 2020

Я получаю неопределенную ошибку столбцов в R. Вот описание tran_data

train_data <- train[c("DURATION","HOURLY_WAGE", "WAGE_RATE_OF_PAY_FROM_HOUR", "OCCUPATION_NUM","CASE_STATUS_1.0","AGENT_PRESENT_1.0")]
> str(train_data)
data.frame: 70000 obs. of  6 variables:
 $ DURATION                  : num  0.0674 0.0674 0.0449 0.0562 0.0674 ...
 $ HOURLY_WAGE               : num  0.378 0.298 0.387 0.333 0.34 ...
 $ WAGE_RATE_OF_PAY_FROM_HOUR: num  0.396 0.302 0.391 0.333 0.354 ...
 $ OCCUPATION_NUM            : num  0.3 0.3 0.3 0.3 0.3 0.3 0.1 0.1 0.1 0.3 ...
 $ CASE_STATUS_1.0           : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 2 2 2 ...
 $ AGENT_PRESENT_1.0         : Factor w/ 2 levels "0","1": 2 1 1 2 2 1 2 2 2 1 ...

Код, который выдает ошибку

n <- neuralnet(train_data$AGENT_PRESENT_1.0~train_data$HOURLY_WAGE+
             train_data$DURATION+
             train_data$WAGE_RATE_OF_PAY_FROM_HOUR+
             train_data$CASE_STATUS_1.0+
             train_data$OCCUPATION_NUM,
             data=train_data,hidden = 1)

ОШИБКА: Ошибка в [.data.frame ( data,, model.list $ variable): выбраны неопределенные столбцы

Я пробовал функцию unlist, но получаю ту же ошибку. Любая помощь о том, как решить эту проблему?

1 Ответ

1 голос
/ 03 мая 2020

Проблема заключается в том, что formula нужны имена столбцов без кавычек, а не значения

library(neuralnet)
n <- neuralnet(`AGENT_PRESENT_1.0` ~ HOURLY_WAGE+
                  DURATION+
                  WAGE_RATE_OF_PAY_FROM_HOUR+
                  `CASE_STATUS_1.0`+
                   OCCUPATION_NUM,
                 data=train_data, hidden = 1)

Используя воспроизводимый пример

data(iris)

это работает

n1 <- neuralnet(Species ~ Petal.Length + Petal.Width, iris, hidden = 1)

это приводит к ошибке

n1 <- neuralnet(iris$Species ~ iris$Petal.Length + iris$Petal.Width, iris, hidden = 1)

Ошибка в [.data.frame (data,, model.list $ variable): выбраны неопределенные столбцы

...