Hello, I also need some helps in estimating the CI of SIF. I'm using the "psiBA" parameterization, and calculating SIF through this formula (Richmond et al. 2010) as well:

SIF = (PsiA*PsiBA) / PsiA * (PsiA*PsiBA + (1 - PsiA) * PsiBa)

jhines wrote:If you have the model SIF's and variances, from each model (should be in the model$derived object), you can compute the model-averaged SIF and std.error as:

- Code: Select all
`ma.SIF = sum(wgt * sif)`

ma.SIF.var = sum(wgt * sif.var) + sum(wgt*(sif - ma.sif)^2)

ma.SIF.se = sqrt(ma.SIF.var)

The variance is the sum of the within model variances, sif.var, and the between model variances, (sif-ma.sif)^2.

wgt is a vector of model weights

sif is a vector of SIF estimates for each model

sif.var is a vector of var(SIF) for each model

The formula you provided to calculate model-averaged SIF really helps. However, I am not sure if I understand the sif.var correctly.

- Code: Select all
`fit <- occMod(model=list(psi ~ SP*elevation+INT*roaddensity, `

p ~ SP+INT_o+INT_d+SP:INT_o),

data = dog_mongoose.pao, type="so.2sp.1", parameterization="PsiBA")

psiBa <- as.vector(fit$real$psi$psiBa[,1])

psiBA <- as.vector(fit$real$psi$psiBA[,1])

psiA <- as.vector(fit$real$psi$psiA[,1])

#a vector containing SIF for each camera

SIF = (psiA*psiBA) / psiA * (psiA*psiBA + (1 - psiA) * psiBa)

sif.var = var(SIF)

sif.se = sqrt(sif.var)

sif = mean(SIF) # sif for this model

mean(SIF+1.96*sif.se) # upper CI

mean(SIF-1.96*sif.se) # lower CI

The fit$derived output only contains psiA, psiB, psiAB, nu, and phi. I can not find psiBa in the output, so I store the psiBa for each camera as "as.vector(fit$real$psi$psiBa[,1])" instead.

I first calculate the SIFs for every camera (the vector "SIF"), and I regard the variance within the vector SIF as sif.var of this model. Is that correct?

Thank you for reading!