R 如何在gamm mgcv模型上使用反向链接函数
我使用了反向链接函数R 如何在gamm mgcv模型上使用反向链接函数,r,gam,mgcv,R,Gam,Mgcv,我使用了反向链接函数 ilink <- family(gam_model)$linkinv ilink这是mgcv::gamm()有点混乱的不幸副作用之一 $gam组件实际上包含一个$family组件,只是$gam对象只属于类“gam”,而mgcv::gam()模型对象也继承自类“glm”,并且有一个family.glm方法。我认为这是因为$gam对象不是完全兼容的“gam”对象,因此不是完整的“glm”对象,因此它不是从“glm”继承的,。这也可能只是一种疏忽;很长一段时间以来,mgc
ilink <- family(gam_model)$linkinv
ilink这是mgcv::gamm()
有点混乱的不幸副作用之一
$gam
组件实际上包含一个$family
组件,只是$gam
对象只属于类“gam”
,而mgcv::gam()
模型对象也继承自类“glm”
,并且有一个family.glm
方法。我认为这是因为$gam
对象不是完全兼容的“gam”
对象,因此不是完整的“glm”
对象,因此它不是从“glm”
继承的,。这也可能只是一种疏忽;很长一段时间以来,mgcv::gamm()
返回的对象只是类“list”
最简单的方法是为类“gamm”
(因此您不必记住要从哪个组件中提取)的对象和类“gam”
,编写自己的族
方法:
生产
> family(m1)
Family: gaussian
Link function: identity
> family(m2)
Family: gaussian
Link function: identity
这是mgcv::gamm()
有点混乱的不幸副作用之一
$gam
组件实际上包含一个$family
组件,只是$gam
对象只属于类“gam”
,而mgcv::gam()
模型对象也继承自类“glm”
,并且有一个family.glm
方法。我认为这是因为$gam
对象不是完全兼容的“gam”
对象,因此不是完整的“glm”
对象,因此它不是从“glm”
继承的,。这也可能只是一种疏忽;很长一段时间以来,mgcv::gamm()
返回的对象只是类“list”
最简单的方法是为类“gamm”
(因此您不必记住要从哪个组件中提取)的对象和类“gam”
,编写自己的族
方法:
生产
> family(m1)
Family: gaussian
Link function: identity
> family(m2)
Family: gaussian
Link function: identity
library("mgcv")
set.seed(1)
dat <- gamSim(1, n = 400, dist = "normal", scale = 2, verbose = FALSE)
m1 <- gam(y ~ s(x0) + s(x1) + s(x2) + s(x3), data = dat, method = "REML")
m2 <- gamm(y ~ s(x0) + s(x1) + s(x2) + s(x3), data = dat, method = "REML")
family(m1)
family(m2)
> family(m1)
Family: gaussian
Link function: identity
> family(m2)
Family: gaussian
Link function: identity