Hi all,
I hope everyone has had a fantastic festive season!
Since late 2024, I've been using the ‘Dlambda’ re-parameterisation of the multisession scr model to estimate the temporal trend in population density. I work with a large-scale, long term camera trap dataset, where surveys are repeated annually, and have been for over 7 years. Each year, I re-run the same suite of models with an updated dataset (including the most recent data). As an example, this is one of the model structures that I have been using to look at a time trend in lambda:
test <- secr.fit(
capthist,
mask = mask,
hcov = "Sex",
model = list(D = ~Session, lambda0 = ~1, sigma = ~h2),
detectfn = "HHN",
trace = T,
details = list(Dlambda = T),
method = "Nelder-Mead"
)
Up until secr version 5.3.0 I was getting realistic estimates for lambda and D1. However, upon adding data from the 2025 survey, which was conducted late last year, and running the above model in the latest version of secr, the lambda estimates have suddenly dropped substantially (from, as an example, 0.9 to 0.0003) across all sessions.
To check if this was an issue with my data and/or coding, I loaded an older version of secr (V 5.2.0) and ran an identical model, with the same dataset (i.e., with the additional 2025 data). This has resulted in 'expected' estimates, which hover around 1. I have provided both outputs below for comparison:
secr 5.2.0:
> predictDlambda(test)
estimate SE.estimate lcl ucl
D1 0.0002746614 5.822853e-05 0.0001821049 0.0004142606
lambda1 1.0972923203 1.016758e-01 0.9154149506 1.3153056278
lambda2 1.0784406758 7.798613e-02 0.9361014050 1.2424234010
lambda3 1.0599129053 5.617417e-02 0.9554085043 1.1758481966
lambda4 1.0417034446 3.781908e-02 0.9701778928 1.1185021577
lambda5 1.0238068252 2.808817e-02 0.9702187736 1.0803547033
lambda6 1.0062176723 3.354175e-02 0.9425956891 1.0741339216
lambda7 0.9889307037 4.839268e-02 0.8985407285 1.0884135862
lambda8 0.9719407278 6.596597e-02 0.8510102431 1.1100557085
lambda9 0.9552426421 8.410895e-02 0.8041002752 1.1347944199
secr 5.3.0:
> predictDlambda(test)
estimate SE.estimate lcl ucl
D1 0.0003195802 3.930255e-05 0.0002513566 0.0004063213
lambda1 0.0003206032 3.823423e-05 0.0002539885 0.0004046891
lambda2 0.0003216294 3.719348e-05 0.0002565954 0.0004031463
lambda3 0.0003226589 3.618381e-05 0.0002591706 0.0004016997
lambda4 0.0003236917 3.520905e-05 0.0002617072 0.0004003571
lambda5 0.0003247278 3.427340e-05 0.0002641971 0.0003991268
lambda6 0.0003257672 3.338143e-05 0.0002666320 0.0003980178
lambda7 0.0003268100 3.253809e-05 0.0002690025 0.0003970401
lambda8 0.0003278561 3.174865e-05 0.0002712986 0.0003962041
lambda9 0.0003289055 3.101871e-05 0.0002735098 0.0003955208
I'm not sure if I'm missing a key change in the recent update, and thus need to adjust my model specification. Any suggestions to help with this would be deeply appreciated. I'm happy to provide an example dataset if required.
Cheers,
Zoe