rsq <- function(formula, Data1, indices) { d <- Data1[indices,] # allows boot to select sample fit <- lm(formula, Data1=d) return(summary(fit)$r.square)}results = boot(data = Data1, statistic = rsq, R = 500)
当我执行这段代码时,得到以下错误:
Error in Data1[indices,] : incorrect number of dimensions
背景信息:我正在使用线性回归创建一个预测模型。我希望测试我的预测模型,并通过一些研究,我决定使用自助法(Bootstrapping Method)。
回答:
感谢@隐藏人名,请查看评论中的原始帖子。
如果你阅读boot::boot函数的帮助页面,你会发现它调用的函数的第一个参数是data,然后是indices,再然后是其他参数。因此,请将你的函数定义顺序更改为rsq <- function(Data1, indices, formula)
我遇到的另一个问题是我没有定义函数。