[R-sig-eco] question about beta regressions

Scott Foster scott.foster at csiro.au
Tue Nov 12 03:27:59 CET 2013


Hi,

This seems like it is a problem with interpretation.  You are not modelling the mean of the distribution directly, rather it is a function of the mean 
(a link function) that is modelled.  This is all stated in ?betareg and it gives a number of different options for link function.  A negative value is 
perfectly OK as the inverse-link of a negative value is positive and within the range.

If you want to have a look at the expected values, on the original scale of the data (response scale), then you will have to call another function 
(formally a method) -- using predict( Deca.sumBDE, type="response").  When calling predict() in this manner you will get a prediction for each 
observation.  It is likely that these are not the values of the covariates that you want to predict at.  To do predictions at those pre-specified 
covariates you will need to create a data.frame with all variables used in your model, with values that you want to predict at.  See ?predict.betareg.

A good place to get more familiar with beta regression is to look at one of the numerous online tutorials about GLMs (generalised linear models).  In 
fact, it seems to be a special case of a GLM as a beta distribution is a member of the exponential family (so Wikipedia says).  In any case, the 
compartmentalisation of the beta regression seems to mirror a GLM.

I hope that this helps.

Scott

PS Marie: I forgot to send this to the list the first time.

On 12/11/13 12:29, marieline gentes wrote:
> Hello,
>
> I have a question regarding the function Betareg. I am a bit new to this package, and maybe I did not understand all the theory behind...
>
> My data are proportions (%) of a contaminant (DecaBDE) in blood of birds (n=78) which were GPS-tagged so that we could see what kind of habitat they visited. We are investigating the effects of habitat use on the proportions of that contaminant.
>
> The full model is as follow: %contaminant = % time spent in agriculture + %
> time in urban + % time in St-Lawrence River + having visited a landfill (yes/no).
>
> Coding:
> Deca.sumBDE <- betareg (DecaJb.sumBDEs ~ Agri.outCol24 + AllLawren.outCol24 + LandfiWstwater.YesNo
> + UrbanCov1.outCol24, data = mydata).
>
> Because I am not yet completely familiar with all the theory underlying beta regressions, I followed one of the examples in the package and created a basic model i.e., no second part specified to model the precision (as you can see from the coding).
>
> Somehow all my models produced with betareg (including the intercept only) end up with a negative intercept - but I have no negative data. I was also expecting that the intercept of the null model would be the average of my dependant variable (as in a regular linear regression), but it is not....
>
> Any suggesions ? Could this be happening because I did not fit a two parts model ? Or did I simply misunderstand
> how to interpret and use beta regressions?
>
> Thank you for your time,
>
> Marie
> PhD candidate
> Canada
>
> _______________________________________________
> R-sig-ecology mailing list
> R-sig-ecology at r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-sig-ecology
>
>

-- 
Scott Foster
Computational Informatics
CSIRO
E scott.foster at csiro.au T +61 3 6232 5178
Postal address: CSIRO Computational Informatics, GPO Box 1538, Hobart TAS 7001
Street Address: CSIRO Computational Informatics, Castray Esplanade, Hobart Tas 7001, Australia
www.csiro.au



More information about the R-sig-ecology mailing list