错误r:在简单回归中无效的下标类型“闭包”

时间:2018-05-26 11:47:08

标签: r

不幸的是我是r的初学者。我想在r中使用comand lm运行一个简单的线性回归模型,但每次尝试时都会出现以下错误:

  

xj [i]中的错误:无效的下标类型'closure'

回归模型如下:

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 :(得分:1)

你的第三个论点是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不知道如何使用此函数来对数据进行子集化。因此错误。