Co-occurrence model--detection probability betas?

posts related to the RPresence library, which may not be of general interest to users of 'classic' PRESENCE.

Co-occurrence model--detection probability betas?

Postby heylei » Fri Feb 15, 2019 2:09 pm

Hi all,
I'm working on a single-season two-species spotted owl/barred owl analysis where I'm focused on detection probabilities, not occupancy (sites are non-randomly selected so estimates of occupancy are invalid). The pertinent covariate in this model is a z-transformed weekly measurement of background noise levels at each site.
I'm using the PsiBA (Richmond et al 2010) parameterization and have coded my encounters in the condensed 0-3 method. Models are running without any problems but I'm having trouble understanding the relationships between my beta estimates. My model structure on p is coded as:

p ~ SP+INT_o+INT_d + SP:INT_o + Noise + SP:Noise

Plotting real estimates makes sense, nothing misbehaving or acting strangely (image in link):

Coefficient estimates are:

B1_pA[1] 0.285612 0.093490
B2_pB[1] 0.238717 0.499941
B3_rA[1] -0.135319 0.135049
B4_rBa[1] -0.411427 0.157263
B5_pA[1].Noise_pA -1.096682 0.075720
B6_rBA[1] -1.141336 0.497547
B7_pB[1].Noise_pB 0.383992 0.117759

Here's the question: How are the beta estimates referring to each other?

Noise_pB is definitely a negative effect according to real estimates, but the betas don’t tell the same story. I’m reporting these estimates to describe the relationships between probabilities and can’t figure out how to explain B4-7. Is the magnitude of the rBa effect relative to rBA? Similarly, is Noise_B relative to Noise_A?

I tested back-transforming beta estimates for pA, pB and rA into real estimates on a model without covariates using:

logit2prob <- function(logit){
odds <- exp(logit)
prob <- odds / (1 + odds)

real pA: logit2prob(betapA)
real pB: logit2prob(betapA + betapB)
real rA: logit2prob(betapA + betarA)

However, this method doesn't work for rBa or rBA, at least not in the combinations of coefficient estimates I’ve tried.

I would greatly appreciate any help on this! Happy to provide more output if necessary. I’ve scoured all sources I can think of--my deepest apologies if this question has already been addressed.

Posts: 2
Joined: Thu Feb 14, 2019 7:47 pm

Re: Co-occurrence model--detection probability betas?

Postby jhines » Fri Feb 15, 2019 3:29 pm

With the 2-sp models, there are a lot of parameters and possible interactions. Although RPresence makes it easy to build models, it’s up to you to make sure you know what they are doing. The best way to check is to look at the design matrices in the Presence output file, or in R (print(mymod$dmat)). Here’s an example I made up:
Code: Select all
       b1  b2  b3  b4  b5          b6  b7             
pA[1]  "1" "0" "0" "0" "Noise_pA"  "0" "0"           
pA[2]  "1" "0" "0" "0" "Noise_pA"  "0" "0"           
pA[3]  "1" "0" "0" "0" "Noise_pA"  "0" "0"           
pA[4]  "1" "0" "0" "0" "Noise_pA"  "0" "0"           
pA[5]  "1" "0" "0" "0" "Noise_pA"  "0" "0"           
pB[1]  "1" "1" "0" "0" "Noise_pB"  "0" "SP2:Noise_pB"
pB[2]  "1" "1" "0" "0" "Noise_pB"  "0" "SP2:Noise_pB"
pB[3]  "1" "1" "0" "0" "Noise_pB"  "0" "SP2:Noise_pB"
pB[4]  "1" "1" "0" "0" "Noise_pB"  "0" "SP2:Noise_pB"
pB[5]  "1" "1" "0" "0" "Noise_pB"  "0" "SP2:Noise_pB"
rA[1]  "1" "0" "1" "0" "Noise_rA"  "0" "0"           
rA[2]  "1" "0" "1" "0" "Noise_rA"  "0" "0"           
rA[3]  "1" "0" "1" "0" "Noise_rA"  "0" "0"           
rA[4]  "1" "0" "1" "0" "Noise_rA"  "0" "0"           
rA[5]  "1" "0" "1" "0" "Noise_rA"  "0" "0"           
rBA[1] "1" "1" "1" "0" "Noise_rBA" "1" "SP2:Noise_rBA"
rBA[2] "1" "1" "1" "0" "Noise_rBA" "1" "SP2:Noise_rBA"
rBA[3] "1" "1" "1" "0" "Noise_rBA" "1" "SP2:Noise_rBA"
rBA[4] "1" "1" "1" "0" "Noise_rBA" "1" "SP2:Noise_rBA"
rBA[5] "1" "1" "1" "0" "Noise_rBA" "1" "SP2:Noise_rBA"
rBa[1] "1" "1" "1" "1" "Noise_rBa" "1" "SP2:Noise_rBa"
rBa[2] "1" "1" "1" "1" "Noise_rBa" "1" "SP2:Noise_rBa"
rBa[3] "1" "1" "1" "1" "Noise_rBa" "1" "SP2:Noise_rBa"
rBa[4] "1" "1" "1" "1" "Noise_rBa" "1" "SP2:Noise_rBa"
rBa[5] "1" "1" "1" "1" "Noise_rBa" "1" "SP2:Noise_rBa"

So, b1 is the intercept and b5 is the effect of noise (slope of line for pA). Since b5<0, the line decreases with increasing noise. To get detection probs for pA, you only need b1 and b5 (1st 5 rows above).

B2 is the difference between species A and B (as it’s 1 for all rows pertaining to detection of species B). Since it’s positive, detection prob for species B > detection prob for species A when only one of the species is present for a given noise level.

B3 is the difference between p and r (=1 for all rows pertaining to detection when both species are present). Since it’s negative, detection probs are lower when both species are present for a given noise level.

B4 is the difference between rBA and rBa. Since it’s negative, detection probs for species B are lower when species A is not present (rBa < rBA) for a given noise level.

B6 is an interaction of species and p/r (whether both sp are present). This is negative, indicating that detection for sp. B when both species are present is less than detection for species A and for species B when only B is present for a given noise level.

B7 is the interaction of noise and species B. This is positive, indicating that the slope of the line for species B is higher than the slope for species A.

So, the beta’s which have a continuous covariate (B5 and B7) indicate the slope of the line describing the relationship between the covariate and the detection prob. of interest. The beta’s with 0 or 1 indicate the effect if different combinations of the parameters (p vs r, A vs B,…).
Posts: 506
Joined: Fri May 16, 2003 9:24 am
Location: Laurel, MD, USA

Re: Co-occurrence model--detection probability betas?

Postby heylei » Fri Feb 15, 2019 8:29 pm

Thank you so much for this response. I had looked at the design matrix in R and it is set up just like the one you created.
These are the effects and relationships I thought I was seeing but as you said, the two-species models get complicated quickly so I wanted to be absolutely sure I was interpreting the model correctly.
It's pretty amazing to get this kind of feedback directly from the experts!
Thanks again,
Posts: 2
Joined: Thu Feb 14, 2019 7:47 pm

Return to RPresence

Who is online

Users browsing this forum: No registered users and 1 guest