I would like to ask which factors may trigger different results using MARK and RMARK. First to note, that I have read the Jeff Laake's comment about it (viewtopic.php?f=21&t=2121). However, I did not unravel why MARK and RMARK gave me different results. Therefore I would like to expose my case and show you the results.
My goal is to assess how well MARK can estimate the demographic parameters basing on the number of captures and recaptures. To do that, I have simulated a capture-recapture history of a population with three status (A, B, and C). In the simulations I only allowed the three following transitions:
A -> B (PsiAB)
B -> C (PsiBC)
C -> B (PsiCB)
So I assessed how well RMARK estimated the next demographic parameters:
pA, pB, pC
PhiA, PhiB, PhiC
PsiAB, PsiBC, PsiBC
To estimate those parameters, I specified that:
A) The recapture probability was constant but different between statuses
- Code: Select all
p.dot <- list(formula=~1+stratum)
B) The transition probability was time-varying and different between statuses
- Code: Select all
Psi.time=list(formula=~1+time*stratum)
C) The survival probability was time-varying and different between statuses
- Code: Select all
Phi.time=list(formula=~1+time*stratum)
I was surprised because instead of the high number of individuals (more than 50 individuals per status and time step) the estimates of PsiBC were highly biased (see image).
However, the rest of the parameters were well estimated (see an example of another transition parameter).
Therefore I was thinking about the potential causes to get such error. First I thought that there were few individuals to estimate the parameter. So I increased the number of adult non-breeders and breeders. However, I kept finding the biased estimates. Second, I thought that I specified the model wrong, but I think that it is correct (time*stratum). Third, I assessed if MARK was the problem. Surprisingly I detected that MARK calculated the parameter PsiCB accurately (see the estimates of PsiBC and PsiCB).
Therefore, according to Jeff Laake’s comment, the differences have to be related with how I specified the model in RMARK. But, I do not know what is wrong:
- Code: Select all
model_process <- process.data (input, model="Multistrata",
time.intervals = rep(1, (nchar(input[1,1])-1)))
model_make=make.design.data(model_process)
# Fix the transitions
model_make$Psi$fix=NA
model_make$Psi$fix[model_make$Psi$A & model_make$Psi$toC] <- 0
model_make$Psi$fix[model_make$Psi$B & model_make$Psi$toA] <- 0
model_make$Psi$fix[model_make$Psi$C & model_make$Psi$toA] <- 0
# Specify parameters
p.dot <- list(formula=~1+stratum)
Psi.time=list(formula=~1+time*stratum)
Phi.time=list(formula=~1+time*stratum)
# Run MARK
model_mark <- mark (model_process, model_make, model.parameters = list(S=Phi.time, p=p.dot, Psi=Psi.time))
Therefore, I would like to ask your help to understand why RMARK did not estimate the parameter PsiCB adequately.
Thanks in advance