gpt4 book ai didi

r - R 中的交叉验证问题

转载 作者:行者123 更新时间:2023-12-01 11:47:30 26 4
gpt4 key购买 nike

我在 R 中运行以下模型:

 g<-lm(NA.~ PC + I(1/(I(DSET$SPCI) * I(DSET$PC + DSET$PI))),data=DSET)

运行正常。但是当我想交叉验证相同的模型时:

a<-CVlm(df=DSET,form.lm = g ,m=5)

结果是下面的信息:

Error in model.frame.default(formula = form, data = df[rows.in, ], drop.unused.levels = TRUE) : 
variable lengths differ (found for 'I(1/(I(DSET$SPCI) * I(DSET$PC + DSET$PI)))')

编辑:

我按以下方式再次运行模型 g:

g<-lm(NA.~ PC + I(1/(SPCI * (PC + PI))),data=DSET)

输出与第一种方式相同。然后,我使用相同的代码进行交叉验证并运行。

所以我的问题是:为什么 I(1/(I(DSET$SPCI) * I(DSET$PC + DSET$PI)) 不被交叉验证代码接受,并且给出那个信息?

最佳答案

这可能是我第五次来到这里并且一直想知道为什么@jlhoward 给出的答案不起作用。因此,对于 future 的读者(包括我),要使此代码正常工作,请将 df 替换为 data,如下所示:

CVlm(data=DSET,form.lm = form ,m=5)

您可以在 documentation 中阅读更多内容, 第 47 页。

关于r - R 中的交叉验证问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21196461/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com