[effects] allEffects does not accept integer value for xlevels

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[effects] allEffects does not accept integer value for xlevels

Gerrit Eichner
Dear list,

citing from allEffects' help page (of package effects 4.1-2):
"If xlevels=n is an integer, then each numeric predictor is
represented by n equally spaced values rounded to 'nice' numbers."
       

However, adapting the first example from allEffects' help
page throws an an error:

mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
                   data=Cowles, family=binomial)
allEffects(mod.cowles, xlevels=5)
Error in xlevels[[name]] : subscript out of bounds


It appears to me that the cause is buried in
effects:::Analyze.model

in or close to the the lines

if (is.numeric(xlevels) & length(xlevels) == 1L) {
   levs <- xlevels
   for (name in focal.predictors) xlevels[[name]] <- levs
  }



where xlevels -- while not being a list in this case -- is
subscripted by xlevels[[name]].

Is anyone aware of a workaround (without having to specify all
numeric predictors of the used model explicitly in a list and
giving it to xlevels when calling allEffects), and without
having to write my own Analyze.model function? ;-)


  Thx in advance and best regards  --  Gerrit



PS:  sessionInfo()

R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

Matrix products: default

Random number generation:
  RNG:     Mersenne-Twister
  Normal:  Inversion
  Sample:  Rounding

locale:
[1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252
[3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C
[5] LC_TIME=German_Germany.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] effects_4.1-2 carData_3.0-2

loaded via a namespace (and not attached):
  [1] Rcpp_1.0.2        lattice_0.20-38   MASS_7.3-51.4     grid_3.6.1

  [5] DBI_1.0.0         nlme_3.1-141      survey_3.36
estimability_1.3
  [9] minqa_1.2.4       nloptr_1.2.1      Matrix_1.2-17     boot_1.3-23

[13] splines_3.6.1     lme4_1.1-21.9001  survival_2.44-1.1 compiler_3.6.1
[17] colorspace_1.4-1  mitools_2.4       nnet_7.3-12


---------------------------------------------------------------------
Dr. Gerrit Eichner                   Mathematical Institute, Room 212
[hidden email]   Justus-Liebig-University Giessen
Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
http://www.uni-giessen.de/eichner

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: [effects] allEffects does not accept integer value for xlevels

Fox, John
Dear Gerrit,

Yes, that appears to be a bug in Effect() -- too bad that it wasn't discovered earlier because a new version of the package was submitted yesterday, but thank you for the bug report.

We'll fix the bug, but until then a work-around is to specify the number of levels for each numeric predictor, as in

        allEffects(mod.cowles, xlevels=list(neuroticism=4, extraversion=4))

I used 4 levels here to verify that this works correctly, since 5 is the default.

As well, although unrelated to this bug, you might take a look at predictorEffects(), which we recommend in preference to allEffects().

Best,
 John

--------------------------------------
John Fox, Professor Emeritus
McMaster University
Hamilton, Ontario, Canada
Web: socialsciences.mcmaster.ca/jfox/



> -----Original Message-----
> From: R-help [mailto:[hidden email]] On Behalf Of Gerrit
> Eichner
> Sent: Wednesday, September 4, 2019 9:25 AM
> To: [hidden email]
> Subject: [R] [effects] allEffects does not accept integer value for
> xlevels
>
> Dear list,
>
> citing from allEffects' help page (of package effects 4.1-2):
> "If xlevels=n is an integer, then each numeric predictor is represented by
> n equally spaced values rounded to 'nice' numbers."
>
>
> However, adapting the first example from allEffects' help page throws an
> an error:
>
> mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
>                    data=Cowles, family=binomial) allEffects(mod.cowles,
> xlevels=5) Error in xlevels[[name]] : subscript out of bounds
>
>
> It appears to me that the cause is buried in effects:::Analyze.model
>
> in or close to the the lines
>
> if (is.numeric(xlevels) & length(xlevels) == 1L) {
>    levs <- xlevels
>    for (name in focal.predictors) xlevels[[name]] <- levs
>   }
>
>
>
> where xlevels -- while not being a list in this case -- is subscripted by
> xlevels[[name]].
>
> Is anyone aware of a workaround (without having to specify all numeric
> predictors of the used model explicitly in a list and giving it to xlevels
> when calling allEffects), and without having to write my own Analyze.model
> function? ;-)
>
>
>   Thx in advance and best regards  --  Gerrit
>
>
>
> PS:  sessionInfo()
>
> R version 3.6.1 (2019-07-05)
> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64
> (build 18362)
>
> Matrix products: default
>
> Random number generation:
>   RNG:     Mersenne-Twister
>   Normal:  Inversion
>   Sample:  Rounding
>
> locale:
> [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252 [3]
> LC_MONETARY=German_Germany.1252 LC_NUMERIC=C [5]
> LC_TIME=German_Germany.1252
>
> attached base packages:
> [1] stats     graphics  grDevices utils     datasets  methods   base
>
> other attached packages:
> [1] effects_4.1-2 carData_3.0-2
>
> loaded via a namespace (and not attached):
>   [1] Rcpp_1.0.2        lattice_0.20-38   MASS_7.3-51.4     grid_3.6.1
>
>   [5] DBI_1.0.0         nlme_3.1-141      survey_3.36
> estimability_1.3
>   [9] minqa_1.2.4       nloptr_1.2.1      Matrix_1.2-17     boot_1.3-23
>
> [13] splines_3.6.1     lme4_1.1-21.9001  survival_2.44-1.1 compiler_3.6.1
> [17] colorspace_1.4-1  mitools_2.4       nnet_7.3-12
>
>
> ---------------------------------------------------------------------
> Dr. Gerrit Eichner                   Mathematical Institute, Room 212
> [hidden email]   Justus-Liebig-University Giessen
> Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
> http://www.uni-giessen.de/eichner
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: [effects] allEffects does not accept integer value for xlevels

Rolf Turner

I'm obviously not understanding something here, but it seems to me that
the conjecture

>>> It appears to me that the cause is buried in effects:::Analyze.model
>>>
>>> in or close to the the lines
>>>
>>> if (is.numeric(xlevels) & length(xlevels) == 1L) {
>>>     levs <- xlevels
>>>     for (name in focal.predictors) xlevels[[name]] <- levs
>>>    }
>>>
>>>
>>>
>>> where xlevels -- while not being a list in this case --
>>> is subscripted by xlevels[[name]].

is not correct.  There is no problem with using [[...]] to extract
entries from vectors.  E.g.:

x <- 1:3
names(x) <- c("mung","gorp","clyde")
x[["gorp"]]

produces

[1] 2

cheers,

Rolf

On 5/09/19 2:19 AM, Fox, John wrote:

> Dear Gerrit,
>
> Yes, that appears to be a bug in Effect() -- too bad that it wasn't discovered earlier because a new version of the package was submitted yesterday, but thank you for the bug report.
>
> We'll fix the bug, but until then a work-around is to specify the number of levels for each numeric predictor, as in
>
> allEffects(mod.cowles, xlevels=list(neuroticism=4, extraversion=4))
>
> I used 4 levels here to verify that this works correctly, since 5 is the default.
>
> As well, although unrelated to this bug, you might take a look at predictorEffects(), which we recommend in preference to allEffects().
>
> Best,
>   John
>
> --------------------------------------
> John Fox, Professor Emeritus
> McMaster University
> Hamilton, Ontario, Canada
> Web: socialsciences.mcmaster.ca/jfox/
>
>
>
>> -----Original Message-----
>> From: R-help [mailto:[hidden email]] On Behalf Of Gerrit
>> Eichner
>> Sent: Wednesday, September 4, 2019 9:25 AM
>> To: [hidden email]
>> Subject: [R] [effects] allEffects does not accept integer value for
>> xlevels
>>
>> Dear list,
>>
>> citing from allEffects' help page (of package effects 4.1-2):
>> "If xlevels=n is an integer, then each numeric predictor is represented by
>> n equally spaced values rounded to 'nice' numbers."
>>
>>
>> However, adapting the first example from allEffects' help page throws an
>> an error:
>>
>> mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
>>                     data=Cowles, family=binomial) allEffects(mod.cowles,
>> xlevels=5) Error in xlevels[[name]] : subscript out of bounds
>>
>>
>> It appears to me that the cause is buried in effects:::Analyze.model
>>
>> in or close to the the lines
>>
>> if (is.numeric(xlevels) & length(xlevels) == 1L) {
>>     levs <- xlevels
>>     for (name in focal.predictors) xlevels[[name]] <- levs
>>    }
>>
>>
>>
>> where xlevels -- while not being a list in this case -- is subscripted by
>> xlevels[[name]].
>>
>> Is anyone aware of a workaround (without having to specify all numeric
>> predictors of the used model explicitly in a list and giving it to xlevels
>> when calling allEffects), and without having to write my own Analyze.model
>> function? ;-)
>>
>>
>>    Thx in advance and best regards  --  Gerrit
>>
>>
>>
>> PS:  sessionInfo()
>>
>> R version 3.6.1 (2019-07-05)
>> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64
>> (build 18362)
>>
>> Matrix products: default
>>
>> Random number generation:
>>    RNG:     Mersenne-Twister
>>    Normal:  Inversion
>>    Sample:  Rounding
>>
>> locale:
>> [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252 [3]
>> LC_MONETARY=German_Germany.1252 LC_NUMERIC=C [5]
>> LC_TIME=German_Germany.1252
>>
>> attached base packages:
>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>
>> other attached packages:
>> [1] effects_4.1-2 carData_3.0-2
>>
>> loaded via a namespace (and not attached):
>>    [1] Rcpp_1.0.2        lattice_0.20-38   MASS_7.3-51.4     grid_3.6.1
>>
>>    [5] DBI_1.0.0         nlme_3.1-141      survey_3.36
>> estimability_1.3
>>    [9] minqa_1.2.4       nloptr_1.2.1      Matrix_1.2-17     boot_1.3-23
>>
>> [13] splines_3.6.1     lme4_1.1-21.9001  survival_2.44-1.1 compiler_3.6.1
>> [17] colorspace_1.4-1  mitools_2.4       nnet_7.3-12
>>
>>
>> ---------------------------------------------------------------------
>> Dr. Gerrit Eichner                   Mathematical Institute, Room 212
>> [hidden email]   Justus-Liebig-University Giessen
>> Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
>> http://www.uni-giessen.de/eichner
>>
>> ______________________________________________
>> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-
>> guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>


--
Honorary Research Fellow
Department of Statistics
University of Auckland
Phone: +64-9-373-7599 ext. 88276

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: [effects] allEffects does not accept integer value for xlevels

Fox, John
In reply to this post by Fox, John
Dear Rolf,

Thanks for trying to help. The bug wasn't in AnalyzeModel().

There was a bug in Effect.lm(), Effect.multinom(), and Effect.polr() in how xlevels=n (e.g., xlevels=4) was handled, now fixed in the development version of the effects package on R-Forge, from which it can be installed via install.packages("effects", repos="http://R-Forge.R-project.org"). Despite my implication to the contrary, xlevels=n works properly in predictorEffect() in the version of effects currently on CRAN.

I'll wait for a decent interval before updating effects again on CRAN.

Best,
 John

> -----Original Message-----
> From: R-help [mailto:[hidden email]] On Behalf Of Rolf
> Turner
> Sent: Wednesday, September 4, 2019 5:39 PM
> To: Fox, John <[hidden email]>
> Cc: [hidden email]; [hidden email]
> Subject: Re: [R] [effects] allEffects does not accept integer value for
> xlevels
>
>
> I'm obviously not understanding something here, but it seems to me that
> the conjecture
>
> >>> It appears to me that the cause is buried in effects:::Analyze.model
> >>>
> >>> in or close to the the lines
> >>>
> >>> if (is.numeric(xlevels) & length(xlevels) == 1L) {
> >>>     levs <- xlevels
> >>>     for (name in focal.predictors) xlevels[[name]] <- levs
> >>>    }
> >>>
> >>>
> >>>
> >>> where xlevels -- while not being a list in this case -- is
> >>> subscripted by xlevels[[name]].
>
> is not correct.  There is no problem with using [[...]] to extract entries
> from vectors.  E.g.:
>
> x <- 1:3
> names(x) <- c("mung","gorp","clyde")
> x[["gorp"]]
>
> produces
>
> [1] 2
>
> cheers,
>
> Rolf
>
> On 5/09/19 2:19 AM, Fox, John wrote:
> > Dear Gerrit,
> >
> > Yes, that appears to be a bug in Effect() -- too bad that it wasn't
> discovered earlier because a new version of the package was submitted
> yesterday, but thank you for the bug report.
> >
> > We'll fix the bug, but until then a work-around is to specify the
> > number of levels for each numeric predictor, as in
> >
> > allEffects(mod.cowles, xlevels=list(neuroticism=4, extraversion=4))
> >
> > I used 4 levels here to verify that this works correctly, since 5 is the
> default.
> >
> > As well, although unrelated to this bug, you might take a look at
> predictorEffects(), which we recommend in preference to allEffects().
> >
> > Best,
> >   John
> >
> > --------------------------------------
> > John Fox, Professor Emeritus
> > McMaster University
> > Hamilton, Ontario, Canada
> > Web: socialsciences.mcmaster.ca/jfox/
> >
> >
> >
> >> -----Original Message-----
> >> From: R-help [mailto:[hidden email]] On Behalf Of
> >> Gerrit Eichner
> >> Sent: Wednesday, September 4, 2019 9:25 AM
> >> To: [hidden email]
> >> Subject: [R] [effects] allEffects does not accept integer value for
> >> xlevels
> >>
> >> Dear list,
> >>
> >> citing from allEffects' help page (of package effects 4.1-2):
> >> "If xlevels=n is an integer, then each numeric predictor is
> >> represented by n equally spaced values rounded to 'nice' numbers."
> >>
> >>
> >> However, adapting the first example from allEffects' help page throws
> >> an an error:
> >>
> >> mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
> >>                     data=Cowles, family=binomial)
> >> allEffects(mod.cowles,
> >> xlevels=5) Error in xlevels[[name]] : subscript out of bounds
> >>
> >>
> >> It appears to me that the cause is buried in effects:::Analyze.model
> >>
> >> in or close to the the lines
> >>
> >> if (is.numeric(xlevels) & length(xlevels) == 1L) {
> >>     levs <- xlevels
> >>     for (name in focal.predictors) xlevels[[name]] <- levs
> >>    }
> >>
> >>
> >>
> >> where xlevels -- while not being a list in this case -- is
> >> subscripted by xlevels[[name]].
> >>
> >> Is anyone aware of a workaround (without having to specify all
> >> numeric predictors of the used model explicitly in a list and giving
> >> it to xlevels when calling allEffects), and without having to write
> >> my own Analyze.model function? ;-)
> >>
> >>
> >>    Thx in advance and best regards  --  Gerrit
> >>
> >>
> >>
> >> PS:  sessionInfo()
> >>
> >> R version 3.6.1 (2019-07-05)
> >> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10
> >> x64 (build 18362)
> >>
> >> Matrix products: default
> >>
> >> Random number generation:
> >>    RNG:     Mersenne-Twister
> >>    Normal:  Inversion
> >>    Sample:  Rounding
> >>
> >> locale:
> >> [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252 [3]
> >> LC_MONETARY=German_Germany.1252 LC_NUMERIC=C [5]
> >> LC_TIME=German_Germany.1252
> >>
> >> attached base packages:
> >> [1] stats     graphics  grDevices utils     datasets  methods   base
> >>
> >> other attached packages:
> >> [1] effects_4.1-2 carData_3.0-2
> >>
> >> loaded via a namespace (and not attached):
> >>    [1] Rcpp_1.0.2        lattice_0.20-38   MASS_7.3-51.4     grid_3.6.1
> >>
> >>    [5] DBI_1.0.0         nlme_3.1-141      survey_3.36
> >> estimability_1.3
> >>    [9] minqa_1.2.4       nloptr_1.2.1      Matrix_1.2-17     boot_1.3-
> 23
> >>
> >> [13] splines_3.6.1     lme4_1.1-21.9001  survival_2.44-1.1
> compiler_3.6.1
> >> [17] colorspace_1.4-1  mitools_2.4       nnet_7.3-12
> >>
> >>
> >> ---------------------------------------------------------------------
> >> Dr. Gerrit Eichner                   Mathematical Institute, Room 212
> >> [hidden email]   Justus-Liebig-University Giessen
> >> Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
> >> http://www.uni-giessen.de/eichner
> >>
> >> ______________________________________________
> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> PLEASE do read the posting guide http://www.R-project.org/posting-
> >> guide.html and provide commented, minimal, self-contained,
> >> reproducible code.
> >
> > ______________________________________________
> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide
> > http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
> >
>
>
> --
> Honorary Research Fellow
> Department of Statistics
> University of Auckland
> Phone: +64-9-373-7599 ext. 88276
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: [effects] allEffects does not accept integer value for xlevels

Gerrit Eichner
Dear John,

thank you for the quick response and fix! Sorry, that I didn't
detect the bug earlier, but everything had run smoothly sofar. ;-)
(I am aware of predictorEffects. I have in fact switched to it
recently. Excellent functionality; thx a lot for it! Actually,
experimenting with its ...levels arguments lead me to the
respective attempts with allEffects out of curiosity.)

Dear Rolf,

my conjecture was not about a "problem with using [[...]] to
*extract* entries from vectors", but about assigning a value to a
list component of an object which is not a list. I was referring
to xlevels[[name]] <- levs where xlevels is an integer. (But that
doesn't matter anymore because my conjecture pointed to the wrong
function anyway.)

  Best regards  --  Gerrit

---------------------------------------------------------------------
Dr. Gerrit Eichner                   Mathematical Institute, Room 212
[hidden email]   Justus-Liebig-University Giessen
Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
http://www.uni-giessen.de/eichner
---------------------------------------------------------------------

Am 05.09.2019 um 00:32 schrieb Fox, John:

> Dear Rolf,
>
> Thanks for trying to help. The bug wasn't in AnalyzeModel().
>
> There was a bug in Effect.lm(), Effect.multinom(), and Effect.polr() in how xlevels=n (e.g., xlevels=4) was handled, now fixed in the development version of the effects package on R-Forge, from which it can be installed via install.packages("effects", repos="http://R-Forge.R-project.org"). Despite my implication to the contrary, xlevels=n works properly in predictorEffect() in the version of effects currently on CRAN.
>
> I'll wait for a decent interval before updating effects again on CRAN.
>
> Best,
>   John
>
>> -----Original Message-----
>> From: R-help [mailto:[hidden email]] On Behalf Of Rolf
>> Turner
>> Sent: Wednesday, September 4, 2019 5:39 PM
>> To: Fox, John <[hidden email]>
>> Cc: [hidden email]; [hidden email]
>> Subject: Re: [R] [effects] allEffects does not accept integer value for
>> xlevels
>>
>>
>> I'm obviously not understanding something here, but it seems to me that
>> the conjecture
>>
>>>>> It appears to me that the cause is buried in effects:::Analyze.model
>>>>>
>>>>> in or close to the the lines
>>>>>
>>>>> if (is.numeric(xlevels) & length(xlevels) == 1L) {
>>>>>      levs <- xlevels
>>>>>      for (name in focal.predictors) xlevels[[name]] <- levs
>>>>>     }
>>>>>
>>>>>
>>>>>
>>>>> where xlevels -- while not being a list in this case -- is
>>>>> subscripted by xlevels[[name]].
>>
>> is not correct.  There is no problem with using [[...]] to extract entries
>> from vectors.  E.g.:
>>
>> x <- 1:3
>> names(x) <- c("mung","gorp","clyde")
>> x[["gorp"]]
>>
>> produces
>>
>> [1] 2
>>
>> cheers,
>>
>> Rolf
>>
>> On 5/09/19 2:19 AM, Fox, John wrote:
>>> Dear Gerrit,
>>>
>>> Yes, that appears to be a bug in Effect() -- too bad that it wasn't
>> discovered earlier because a new version of the package was submitted
>> yesterday, but thank you for the bug report.
>>>
>>> We'll fix the bug, but until then a work-around is to specify the
>>> number of levels for each numeric predictor, as in
>>>
>>> allEffects(mod.cowles, xlevels=list(neuroticism=4, extraversion=4))
>>>
>>> I used 4 levels here to verify that this works correctly, since 5 is the
>> default.
>>>
>>> As well, although unrelated to this bug, you might take a look at
>> predictorEffects(), which we recommend in preference to allEffects().
>>>
>>> Best,
>>>    John
>>>
>>> --------------------------------------
>>> John Fox, Professor Emeritus
>>> McMaster University
>>> Hamilton, Ontario, Canada
>>> Web: socialsciences.mcmaster.ca/jfox/
>>>
>>>
>>>
>>>> -----Original Message-----
>>>> From: R-help [mailto:[hidden email]] On Behalf Of
>>>> Gerrit Eichner
>>>> Sent: Wednesday, September 4, 2019 9:25 AM
>>>> To: [hidden email]
>>>> Subject: [R] [effects] allEffects does not accept integer value for
>>>> xlevels
>>>>
>>>> Dear list,
>>>>
>>>> citing from allEffects' help page (of package effects 4.1-2):
>>>> "If xlevels=n is an integer, then each numeric predictor is
>>>> represented by n equally spaced values rounded to 'nice' numbers."
>>>>
>>>>
>>>> However, adapting the first example from allEffects' help page throws
>>>> an an error:
>>>>
>>>> mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion,
>>>>                      data=Cowles, family=binomial)
>>>> allEffects(mod.cowles,
>>>> xlevels=5) Error in xlevels[[name]] : subscript out of bounds
>>>>
>>>>
>>>> It appears to me that the cause is buried in effects:::Analyze.model
>>>>
>>>> in or close to the the lines
>>>>
>>>> if (is.numeric(xlevels) & length(xlevels) == 1L) {
>>>>      levs <- xlevels
>>>>      for (name in focal.predictors) xlevels[[name]] <- levs
>>>>     }
>>>>
>>>>
>>>>
>>>> where xlevels -- while not being a list in this case -- is
>>>> subscripted by xlevels[[name]].
>>>>
>>>> Is anyone aware of a workaround (without having to specify all
>>>> numeric predictors of the used model explicitly in a list and giving
>>>> it to xlevels when calling allEffects), and without having to write
>>>> my own Analyze.model function? ;-)
>>>>
>>>>
>>>>     Thx in advance and best regards  --  Gerrit
>>>>
>>>>
>>>>
>>>> PS:  sessionInfo()
>>>>
>>>> R version 3.6.1 (2019-07-05)
>>>> Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10
>>>> x64 (build 18362)
>>>>
>>>> Matrix products: default
>>>>
>>>> Random number generation:
>>>>     RNG:     Mersenne-Twister
>>>>     Normal:  Inversion
>>>>     Sample:  Rounding
>>>>
>>>> locale:
>>>> [1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252 [3]
>>>> LC_MONETARY=German_Germany.1252 LC_NUMERIC=C [5]
>>>> LC_TIME=German_Germany.1252
>>>>
>>>> attached base packages:
>>>> [1] stats     graphics  grDevices utils     datasets  methods   base
>>>>
>>>> other attached packages:
>>>> [1] effects_4.1-2 carData_3.0-2
>>>>
>>>> loaded via a namespace (and not attached):
>>>>     [1] Rcpp_1.0.2        lattice_0.20-38   MASS_7.3-51.4     grid_3.6.1
>>>>
>>>>     [5] DBI_1.0.0         nlme_3.1-141      survey_3.36
>>>> estimability_1.3
>>>>     [9] minqa_1.2.4       nloptr_1.2.1      Matrix_1.2-17     boot_1.3-
>> 23
>>>>
>>>> [13] splines_3.6.1     lme4_1.1-21.9001  survival_2.44-1.1
>> compiler_3.6.1
>>>> [17] colorspace_1.4-1  mitools_2.4       nnet_7.3-12
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> Dr. Gerrit Eichner                   Mathematical Institute, Room 212
>>>> [hidden email]   Justus-Liebig-University Giessen
>>>> Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
>>>> http://www.uni-giessen.de/eichner
>>>>
>>>> ______________________________________________
>>>> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>> PLEASE do read the posting guide http://www.R-project.org/posting-
>>>> guide.html and provide commented, minimal, self-contained,
>>>> reproducible code.
>>>
>>> ______________________________________________
>>> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>
>>
>> --
>> Honorary Research Fellow
>> Department of Statistics
>> University of Auckland
>> Phone: +64-9-373-7599 ext. 88276
>>
>> ______________________________________________
>> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-
>> guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.