我正在尝试从ML拟合的模型中提取参数,该参数具有从corPagel(在包ape中定义)获得的相关结构。感兴趣的参数位于摘要中名为 apVar 的元素中。
library(ape); library(nlme)
cor_lambdaML <- corPagel( 1, avestree, fixed=FALSE )
m <- gls(AUTUMN ~ GREGARIOUSNESS + SEASON + TARSUS + MATURATION + SPRING + MIGRATION + DICHROMATISM + HABITAT + POSTJUVENILE + CONSPICUOUSNESS, correlation = cor_lambdaML, data = avesdata, method = 'ML' )
names(m)
m$apVar
此代码生成以下输出(请下载模型为m here的dput):
corStruct lSigma
corStruct 0.03848807 0.03090663
lSigma 0.03090663 0.04403168
attr(,"Pars")
corStruct lSigma
0.858126838 0.008131981
attr(,"natural")
[1] TRUE
提取第一个矩阵的值是微不足道的,但是如何在元素 attr(,“Pars”)中提取corStruct的值?
答案 0 :(得分:0)
不确定您需要挖掘多远,但m$Pars$corStruct
是存储数据的位置。也就是说:m
是list
,其中包含许多组件,其中一个组件为Pars
。它本身是list
,其中包含corStruct
个组件。
?glsObject
将引导您了解所有列表元素的详细信息。