2
$\begingroup$

hopefully someone can point me in the right direction here.

I'm using boosted regression trees (BRT) to assess the relative importance of a number of environmental factors (sea bottom temperature, sea bottom salinity, substrate grain size, depth, distance from shore, maximum water speed @ seabed) on fish abundances (4 different species of rays, plus all 4 summed) from 1440 sample sites in the Irish Sea, then creating a predicted surface of abundance estimates for a grid of all of those environmental variables across the whole Irish Sea.

Concentrating on all rays summed, the range of abundances goes from zero (loads of these: zero inflated) to 126. My problem is that the range of predictions produced by the model goes from -7.06 to 36.38, which assumedly has to be wrong?

For the BRT I simply used the count data, with distribution="gaussian"... but I'm yet to find any other examples of people doing this approach. Elith et al 2008, who built the code expanding on Ridgeway's original BRT work, reduce their data to presence/absence and use binomial (Bernoulli). In his thesis comparing BRTs to GAms & GLMs, Abeare uses gaussian, but only after removing the zeroes (i.e. zero truncated).

I'm wondering if anyone might know why the predictive results would be negative?

Or if anyone could recommend a 'best' way of proceeding? My supervisor suggested lognormally transforming the data, as Abeare did, but this simply produces smaller negatives...

Thanks in advance!

$\endgroup$
2
  • $\begingroup$ Edit: looks like one solution is to split the data into: presence/absence binomial (Bernoulli) BRT + log-transformed presence only gaussian BRT. As per: www.sefsc.noaa.gov/sedar/download/S34_WP_12_Froeschke and Drymon 2013.pdf?id=DOCUMENT $\endgroup$
    – dez93_2000
    Commented Apr 8, 2014 at 14:42
  • 1
    $\begingroup$ I realise this is a bit later, but did you try specifying a Poisson distribution (i.e. log link)? $\endgroup$
    – jbaums
    Commented Jul 10, 2014 at 23:15

1 Answer 1

1
$\begingroup$

When you use Gaussian, you are saying that the DV is continuous and you are not limiting it to positive values. But you have counts. Usually, when counts range as far as 163, that doesn't matter too much and you don't get negative values (although you will get fractional values). But here, you seem to have enough 0's to allow negative predicted values to appear.

So I suggest using a count model. The most basic is Poisson, but that is unlikely to be correct (it assumes that the conditional mean is equal to the conditional variance, and that rarely happens and seems unlikely here). You could try a negative binomial (NB) or a zero-inflated Poisson (ZIP), or maybe you will need a ZINB.

$\endgroup$
2
  • 1
    $\begingroup$ Or, if the software you're using allows it, you could use a Gaussian model with a logarithmic link $\endgroup$
    – Ben Bolker
    Commented Jan 7 at 23:46
  • $\begingroup$ Thanks both. In the end I used a delta/hurdle model of binomial for presence/absences, multiplied by Gaussian for the presence-only count data. I don't believe that the function I'm using (gbm.step from dismo in R) allows negative binomial but in practice, as Peter says, this hasn't been an issue in the last 9 or so years! Thanks all, marking yours as the solution. $\endgroup$
    – dez93_2000
    Commented Jan 8 at 10:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.