0

可能是一个愚蠢的问题,但经过数小时寻找答案后,我仍然没有找到解决方案。我已经运行了一个 gamm 模型,该模型似乎工作正常。我现在想使用模型(mod1)中计算的对数似然来计算模型的 AIC。

模型运行如下

mod1<-gamm(Biomass..g. ~ Atoll + SizeCm + Depth + OuterOrLagoon,random=list(SiteID=~1),family=gaussian,data=RMI2014, method = "REML")

然后在模型运行后,我尝试使用以下代码获取 AIC,该代码返回后续错误

> AIC(mod1, k=2)
Error in UseMethod("logLik") : 
no applicable method for 'logLik' applied to an object of class "c('gamm', 'list')"

最初我认为这是错误的,因为我使用的是 REML 而不是 Max Likelihood,但不使用 REML 时会返回相同的错误。

是因为我在返回错误的伽玛中有一个随机因素吗?

请帮忙!

干杯,泰森

4

1 回答 1

0

根据文档gamm调用的结果是一个列表,其中包含两个类型的对象gamlme.

您可以获得 lme 模型的 AIC 和 logLik,例如:

AIC(mod1$lme)

我对 gamm 模型知之甚少,无法说明这是否等同于您所追求的(您可能想在交叉验证中重新发布)

于 2015-01-05T17:49:36.290 回答