我試圖使用基於謝弗物流曝光方法來運行巢生存模型中使用的收縮數據,2004年我有一系列的參數,並希望比較所有可能的模式,然後用Burnham和Anderson在2002年估算的模型平均參數。然而,我很難找出如何估計收縮調整參數的置信區間。計算置信區間模型的平均R中
是否有可能估計置信區間使用收縮估計模型平均參數?我可以很容易地使用model.average $ coef.shrinkage提取模型平均參數的平均估計值,但我不清楚如何得到相應的置信區間。
任何幫助表示衷心感謝。我目前正在使用MuMIn軟件包,因爲我在鏈接功能方面遇到了AICcmodavg錯誤。
下面是我使用的代碼的簡化版本:
library(MuMIn)
# Logistical Exposure Link Function
# See Shaffer, T. 2004. A unifying approach to analyzing nest success.
# Auk 121(2): 526-540.
logexp <- function(days = 1)
{
require(MASS)
linkfun <- function(mu) qlogis(mu^(1/days))
linkinv <- function(eta) plogis(eta)^days
mu.eta <- function(eta) days * plogis(eta)^(days-1) *
.Call("logit_mu_eta", eta, PACKAGE = "stats")
valideta <- function(eta) TRUE
link <- paste("logexp(", days, ")", sep="")
structure(list(linkfun = linkfun, linkinv = linkinv,
mu.eta = mu.eta, valideta = valideta, name = link),
class = "link-glm")
}
# randomly generate data
nest.data <- data.frame(egg=rep(1,100), chick=runif(100), exposure=trunc(rnorm(100,113,10)), density=rnorm(100,0,1), height=rnorm(100,0,1))
nest.data$chick[nest.data$chick<=0.5] <- 0
nest.data$chick[nest.data$chick!=0] <- 1
# run global logistic exposure model
glm.logexp <- glm(chick/egg ~ density * height, family=binomial(logexp(days=nest.data$exposure)), data=nest.data)
# evaluate all possible models
model.set <- dredge(glm.logexp)
# model average 95% confidence set and estimate parameters using shrinkage
mod.avg <- model.avg(model.set, beta=TRUE)
(mod.avg$coef.shrinkage)
如何提取任何想法/生成相應的置信區間?
由於 艾米
這是一些非常酷的造型:
的代碼從以上可以上。我沒有完全理解這一點,但我認爲你知道mod.avg $ avg.model返回CIs,並且你正在詢問使用收縮的估計值,如果我理解正確,那些估計值就不是。而對於model.avg幫助使用這個配置項,但我真的不知道什麼cumsum(重量)ARG做:confint(model.avg(model.set,cumsum(重量)<= 0.95)) – MattBagg
思考更多的是,這個問題可能在交叉驗證(stats.stackexchange.com)中得到更好的關注,它實際上有一個縮小標籤。就這個問題涉及在這種類型的模型中估計CI的適當方法而言,這是一個統計問題而不是編碼問題。 – MattBagg
謝謝@ mb3041023。 'cumsum(weight = x)'參數將模型平均中包含的模型限制爲累計權重等於x的模型。不幸的是'confint'不使用收縮,但我想出了一個黑客,我認爲在盧卡奇,P. M.,伯納姆,K. P.,&安德森,D。R.(2009)基於方程的5部作品。模型選擇偏差和弗裏德曼的悖論。統計數學研究所年鑑,62(1),117-125。代碼包含在單獨的評論中。也感謝關於交叉驗證的單挑。 – nzwormgirl