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
gerrit.eich...@math.uni-giessen.de   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:r-help-boun...@r-project.org] On Behalf Of Rolf
Turner
Sent: Wednesday, September 4, 2019 5:39 PM
To: Fox, John <j...@mcmaster.ca>
Cc: r-help@r-project.org; sa...@umn.edu
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:r-help-boun...@r-project.org] On Behalf Of
Gerrit Eichner
Sent: Wednesday, September 4, 2019 9:25 AM
To: r-help@r-project.org
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
gerrit.eich...@math.uni-giessen.de   Justus-Liebig-University Giessen
Tel: +49-(0)641-99-32104          Arndtstr. 2, 35392 Giessen, Germany
http://www.uni-giessen.de/eichner

______________________________________________
R-help@r-project.org 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.

______________________________________________
R-help@r-project.org 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

______________________________________________
R-help@r-project.org 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.

______________________________________________
R-help@r-project.org 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.


______________________________________________
R-help@r-project.org 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 via email to