ошибка r: недопустимый тип индекса «замыкание» в простой регрессии - PullRequest
0 голосов
/ 26 мая 2018

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

Ошибка в xj [i]: недопустимый тип индекса «закрытие»

Модель регрессии выглядит следующим образом:

REG1 <- lm(flowpercent~ret+tna+fundage+number_shr_cl,data = reg, na.omit)
 #-flowpercent is a calculated variable:

reg$flowpercent <- reg$flow_dollar/lag(reg$tna, n=1)

 #-fundage is also calculated:

reg$fundage <- as.numeric(difftime(ref_date,reg$InceptionDate, units = "days")/365.25)

ret, tna , number_shr_cl - переменные из базы данных

, возможно, некоторые из них смогутпомогите мне решить мою проблему.

Большое спасибо заранее.

1 Ответ

0 голосов
/ 26 мая 2018

Ваш третий аргумент na.omit.Вы, наверное, видели, как кто-то пишет что-то вроде na.action = na.omit.Однако, если вы посмотрите справку для lm, набрав ?lm, вы увидите:

Usage:

     lm(formula, data, subset, weights, na.action, ... # etc

, который говорит вам, что третий аргумент lm равен subset.Итак, вы передаете объект с именем na.omit аргументу subset, который lm пытается использовать для подмножества ваших данных.К сожалению, na.omit является R-функцией (она же «замыкание»).Не удивительно, что R не знает, как использовать эту функцию для подмножества ваших данных.Отсюда и ошибка.

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