[R-sig-ME] Unable to standardize glmmADMB global model
Ben Bolker
bbolker at gmail.com
Thu Aug 18 15:07:00 CEST 2016
what's the results of names(std_data) ?
On 16-08-18 09:05 AM, Aoibheann Gaughran wrote:
> Hi Ben,
>
> I've manually scaled and centered the continuous variables, and just
> scaled the offset terms. However, I now get the following error message
> when I attempt to run the model, which appears to related to a
> subsetting issue?
>
> Error in `[.data.frame`(cor_dat, start_pos + (1:x$npar), start_pos + 4 + :
> undefined columns selected
>
> The revised global model is specified as follows:
>
> stdmod12d <- glmmadmb(field_count ~ habitat #categorical
> + season_wt #cat
> + sex #cat
> + ageclass #cat
> + z.slope #continuous, scaled and centred
> + NSEW #cat
> + z.month_fix #continuous, scaled and centred
> + z.num_fields #continuous, scaled and centred
> + habitat:ageclass
> + habitat:sex
> + offset(log(z.origarea)) #scaled
> + offset(log(z.PropAvlHab)) #scaled
> +(1|animal) #repeated obs from same individual
> +(1|field_id) #repeated obs in same field
> ,
> family="nbinom",
> zeroInflation=TRUE,
> admb.opts=admbControl(shess=FALSE,noinit=FALSE),
> debug=TRUE,
> data = std_data)
>
> On 16 August 2016 at 12:55, Ben Bolker <bbolker at gmail.com
> <mailto:bbolker at gmail.com>> wrote:
>
> You can *scale* the offsets if you like, i.e. change them by a
> multiplicative factor (thus changing the effective area unit for which
> you were modeling counts), but *centering* them doesn't make sense --
> as you've noticed.
>
> On Tue, Aug 16, 2016 at 7:40 AM, Aoibheann Gaughran <gaughra at tcd.ie
> <mailto:gaughra at tcd.ie>> wrote:
> > Hi Ben,
> >
> > Im proceeding by standardizing by hand. However, I need to
> include offsets
> > in my model for origarea and PropAvlHab i.e.
> offset(log(z.origarea)) but
> > logging the standardized varible produced NaNs due to the presence of
> > negative numbers, ditto with z.PropAvlHab. Is there a way around
> this? Do I
> > need to also standardize the offset terms or can I leave them in their
> > unstandardized form?
> >
> > Many thanks,
> >
> > Aoibheann
> >
> > On 15 August 2016 at 15:47, Ben Bolker <bbolker at gmail.com
> <mailto:bbolker at gmail.com>> wrote:
> >>
> >> Hmm. Surprising/hard to diagnose.
> >>
> >> 'standardize' doesn't do anything very fancy - it standardizes the
> >> input variables as described by ?arm::standardize and *refits* the
> >> model (I've always been a little disappointed that it doesn't
> >> standardize by figuring out how to transform the *parameters*, which
> >> is straightforward in principle although it can be tricky to figure
> >> out how to deal with input variables that lead to multiple predictor
> >> variables, e.g. polynomials). I'd be curious to know what's
> going on,
> >> but in your place I would
> >>
> >> (1) try standardizing by hand, e.g.
> >>
> >> std_data <- transform(data,
> >> z.season.wt = scale(season.wt),
> >> ...)
> >>
> >> and refit yourself.
> >>
> >> (2) see if it happens to work with glmmTMB (a simple example does).
> >>
> >> Ben Bolker
> >>
> >>
> >>
> >>
> >> On Mon, Aug 15, 2016 at 10:37 AM, Aoibheann Gaughran
> <gaughra at tcd.ie <mailto:gaughra at tcd.ie>>
> >> wrote:
> >> > Thanks Ben, I ran the code and got the following error and
> warnings:-
> >> >
> >> > Error in glmmadmb(formula = field_count ~ habitat + season_wt +
> c.sex +
> >> > :
> >> > rank of X = 16 < ncol(X) = 24
> >> > In addition: Warning messages:
> >> > 1: In log(z.PropAvlHab) : NaNs produced
> >> > 2: In glmmadmb(formula = field_count ~ habitat + season_wt +
> c.sex + :
> >> > NAs removed in constructing fixed-effect model frame: you should
> >> > probably
> >> > remove them manually, e.g. with na.omit()
> >> >
> >> >
> >> > The original PropAvlHab summary is as follows:-
> >> >
> >> >> summary(dframe1$PropAvlHab)
> >> > Min. 1st Qu. Median Mean 3rd Qu. Max.
> >> > 0.0000123 0.1123000 0.4041000 0.4078000 0.6818000 1.0000000
> >> >
> >> > Aoibheann
> >> >
> >> >
> >> >
> >> > On 15 August 2016 at 15:12, Ben Bolker <bbolker at gmail.com
> <mailto:bbolker at gmail.com>> wrote:
> >> >>
> >> >> 'standardize' is a function from the arm package.
> >> >>
> >> >> I've just hacked glmmADMB a little bit so this should work:
> >> >>
> >> >> library(devtools)
> >> >> install_github("bbolker/glmmADMB") ## install latest version
> >> >> library(arm)
> >> >> arm:::standardize.default(fitted_model$call)
> >> >>
> >> >>
> >> >>
> >> >> On Mon, Aug 15, 2016 at 5:06 AM, Aoibheann Gaughran
> <gaughra at tcd.ie <mailto:gaughra at tcd.ie>>
> >> >> wrote:
> >> >> > Hello Mixed-Modellers,
> >> >> >
> >> >> > I have getting the following error message when trying to
> standardize
> >> >> > my
> >> >> > global glmmadmb model for dredging:
> >> >> >
> >> >> > Error in (function (classes, fdef, mtable) : unable to find an
> >> >> > inherited
> >> >> > method for function ‘standardize’ for signature ‘"glmmadmb"’
> >> >> >
> >> >> > Is it not possible to standardise a glmmadmb model or is the
> problem
> >> >> > with
> >> >> > the structure of the model itself?
> >> >> >
> >> >> > globalmod <- glmmadmb(field_count ~ habitat
> >> >> > #categorical - 7 levels
> >> >> > + season_wt
> >> >> > #categorial - 3 levels
> >> >> > + sex
> >> >> > #categorial -
> 2 levels
> >> >> > + ageclass
> >> >> > #categorial - 3
> levels
> >> >> > + slope
> >> >> > #continuous,
> not scaled
> >> >> > nor
> >> >> > centred
> >> >> > + NSEW
> >> >> > #catagorical - 4
> levels
> >> >> > + month_fix
> >> >> > #continuous, not
> scaled nor
> >> >> > centred,
> >> >> > + num_fields
> >> >> > #continuous, not scaled nor centred
> >> >> > + habitat:ageclass
> >> >> > + habitat:sex
> >> >> > + offset(log(origarea))
> >> >> > + offset(log(PropAvlHab))
> >> >> > +(1|individual_id)
> >> >> > #repeated obs
> from same
> >> >> > individual
> >> >> > +(1|field_id)
> >> >> > #repeated obs
> in same
> >> >> > field,
> >> >> > family="nbinom",
> >> >> > zeroInflation=TRUE,
> >> >> >
> admb.opts=admbControl(shess=FALSE,noinit=FALSE),
> >> >> > debug=TRUE,
> >> >> > data = dframe1)
> >> >> >
> >> >> > no of observations =9220
> >> >> >
> >> >> > Many thanks,
> >> >> >
> >> >> > --
> >> >> > Aoibheann Gaughran
> >> >> >
> >> >> > Behavioural and Evolutionary Ecology Research Group
> >> >> > Zoology Building
> >> >> > School of Natural Sciences
> >> >> > Trinity College Dublin
> >> >> > Dublin 2
> >> >> > Ireland
> >> >> > Phone: +353 (86) 3812615
> >> >> >
> >> >> > [[alternative HTML version deleted]]
> >> >> >
> >> >> > _______________________________________________
> >> >> > R-sig-mixed-models at r-project.org
> <mailto:R-sig-mixed-models at r-project.org> mailing list
> >> >> > https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
> <https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models>
> >> >
> >> >
> >> >
> >> >
> >> > --
> >> > Aoibheann Gaughran
> >> >
> >> > Behavioural and Evolutionary Ecology Research Group
> >> > Zoology Building
> >> > School of Natural Sciences
> >> > Trinity College Dublin
> >> > Dublin 2
> >> > Ireland
> >> > Phone: +353 (86) 3812615 <tel:%2B353%20%2886%29%203812615>
> >
> >
> >
> >
> > --
> > Aoibheann Gaughran
> >
> > Behavioural and Evolutionary Ecology Research Group
> > Zoology Building
> > School of Natural Sciences
> > Trinity College Dublin
> > Dublin 2
> > Ireland
> > Phone: +353 (86) 3812615 <tel:%2B353%20%2886%29%203812615>
>
>
>
>
> --
> Aoibheann Gaughran
>
> Behavioural and Evolutionary Ecology Research Group
> Zoology Building
> School of Natural Sciences
> Trinity College Dublin
> Dublin 2
> Ireland
> Phone: +353 (86) 3812615
More information about the R-sig-mixed-models
mailing list