Confusing error message for [[.factor (PR#14209)
g.russell at eos-solutions.com wrote:
Full_Name: George Russell Version: 2.10.0 and 2.11.0 Under development (unstable) (2010-02-08 r51108) OS: Windows Submission from: (NULL) (217.111.3.131)
c("a","b")[[c(TRUE,FALSE)]]
Error in `[[.default`(factor(c("a", "b")), c(TRUE, FALSE)) :
recursive indexing failed at level 1
I find this error message confusing, though after reading the HELP carefully I
think I know what is going on. Would not something like "[[ does not work with
logical index vectors" be more appropriate?
It didn't take particularly careful reading to find this:
"The most important distinction between [, [[ and $ is that
the [ can select more than one element whereas the other two
select a single element."
Try this:
c("a","b")[[c(1,2)]]
c("a","b")[[TRUE]]
-Peter Ehlers
sessionInfo is (for 2.11) : R version 2.11.0 Under development (unstable) (2010-02-08 r51108) i386-pc-mingw32 locale: [1] LC_COLLATE=German_Germany.1252 LC_CTYPE=German_Germany.1252 LC_MONETARY=German_Germany.1252 [4] LC_NUMERIC=C LC_TIME=German_Germany.1252 attached base packages: [1] stats graphics grDevices datasets utils methods base
______________________________________________ R-devel at r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel
Peter Ehlers University of Calgary