How to select the correct link function
Posted: Mon May 16, 2022 8:57 am
Hi all,
I am currently working on a project where I want to estimate the density of an island population of feral cats. Camera traps were placed on the island and were moved around over a couple of months to cover the whole island.
I am using SECR to obtain my density estimates, and I constructed a simple model with a hazard rate detection function without any problems. I expected density to be influenced by distance to major roads (DTRL), as feral cats may avoid humans.
When plotting the mask with distance to roads, everything looks fine, but when running the model I get the following error:
Error in getmaskpar(!CL, D, data$m, sessnum, details$unmash, attr(data$capthist, :
bad densities in 'secrloglikfn' (try different optimisation method, link, or model?
I tried changing the method to Nelder-Mead, but I got the same error message. However, when I started randomly playing around with the link, the model actually fitted.
While this is nice,I actually have no idea if using this link function makes any sense. Are there data distributions for D, g0, sigma and z? How do I select the right link function?
Any help is greatly appreciated!
Hilbert
I am currently working on a project where I want to estimate the density of an island population of feral cats. Camera traps were placed on the island and were moved around over a couple of months to cover the whole island.
I am using SECR to obtain my density estimates, and I constructed a simple model with a hazard rate detection function without any problems. I expected density to be influenced by distance to major roads (DTRL), as feral cats may avoid humans.
- Code: Select all
covariates(Schiermask)[,"DTRL"] <- distancetotrap(Schiermask, LargeRoadsPoints)
fit.road.HR <- secr.fit (CH, buffer = bufferwidth, detectfn = 'HR', trace = T, mask = Schiermask, D ~ DTRL)
When plotting the mask with distance to roads, everything looks fine, but when running the model I get the following error:
Error in getmaskpar(!CL, D, data$m, sessnum, details$unmash, attr(data$capthist, :
bad densities in 'secrloglikfn' (try different optimisation method, link, or model?
I tried changing the method to Nelder-Mead, but I got the same error message. However, when I started randomly playing around with the link, the model actually fitted.
- Code: Select all
fit.road.HR <- secr.fit (CH, buffer = bufferwidth, detectfn = 'HR', trace = T, mask = Schiermask, D ~ DTRL, link = list(D="logit", g0="logit", sigma="log", z ="log"))
While this is nice,I actually have no idea if using this link function makes any sense. Are there data distributions for D, g0, sigma and z? How do I select the right link function?
Any help is greatly appreciated!
Hilbert