[Rd] Confusing error message for [[.factor (PR#14209)
Peter Ehlers
ehlers at ucalgary.ca
Tue Feb 9 18:17:45 CET 2010
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
More information about the R-devel
mailing list