我已经安装了package nlme
的nlme()
模型。nlme fit:vcov与汇总
现在我想模拟一些预测区间,考虑到参数的不确定性。
为此,我需要提取固定效应的方差矩阵。
据我所知,这样做有两种方式:
vcov(fit)
和
summary(fit)$varFix
这两个产生相同的矩阵。
不过,如果我检查
diag(vcov(fit))^.5
这是不一样的summary(fit)
报道的标准误我错了期待这两个是一样的吗?
编辑:这是一个代码示例
require(nlme)
f=expression(exp(-a*t))
a=c(.5,1.5)
pts=seq(0,4,by=.1)
sim1=function(t) eval(f,list(a=a[1],t))+rnorm(1)*.1
y1=sapply(pts,sim1)
sim2=function(t) eval(f,list(a=a[2],t))+rnorm(1)*.1
y2=sapply(pts,sim2)
y=c(y1,y2)
t=c(pts,pts)
batch=factor(rep(1:2,82))
d=data.frame(t,y,batch)
nlmeFit=nlme(y~exp(-a*t),
fixed=a~1,
random=a~1|batch,
start=c(a=1),
data=d
)
vcov(nlmeFit)
summary(nlmeFit)$varFix
vcov(nlmeFit)^.5
summary(nlmeFit)
你更可能如果您提供您的数据集或至少一个有代表性的样本,并显示您用来找到合适的代码,请获得帮助。 – jlhoward
我同意。但数据集不是我的,我推断任何可能能够回答的人都会在过去使用nlme,因此nlme适合随时可用。既然我指出了一个普遍应该是数据独立的问题,我希望它不会成为一个问题。也就是说,如果人们不能证实他们自己的例子中的两个矩阵的不平等,这将是一个非常大的暗示,我做错了什么。 但是我可以走开并模拟一个数据集,如果你认为这将有所帮助。 –
是的,证明您可以发布数据的问题非常重要。 – jlhoward