我使用R中的leaps
包来运行regsubsets
:
a <- regsubsets(in_var~paste(predictors,collapse="+"),data=x,nbest=10,matrix=T)
收到错误消息:
Error in model.frame.default(data = x, matrix = T, formula = rating ~ : variable lengths differ (found for '(matrix)')
(注意,如果我手动复制预测变量列表,则没有区别。)
我刚试过态度数据集,例如:
data(attitude)
attitude <- na.omit(attitude)
regsubsets(rating~.,data=attitude,nbest=10,matrix=T)
并得到同样的错误。我的数据集是相似的,但有更多的变量,in_var是1-3分(其他地方我把它折叠成二进制,我以后可以运行一个逻辑)。我不确定我是否在这里提出statistics question
或R
个问题...
一些问题(例如Error in model.frame.default ...... variable lengths differ; variable lengths differ in R ...)处理此问题,但我已经在数据框架上完成了na.omit,所以我不应该任何缺失的值导致不均匀的向量。
答案 0 :(得分:0)
这有效:
a <- regsubsets(y=as.matrix(x[c("in_var")]),x=as.matrix(x[c(predictors)]),nbest=10)
据推测,问题是regsubsets
需要matrix
(不是df)