[Rd] Puzzle or bug with matrix indexing
David Hugh-Jones
d@vidhughjone@ @ending from gm@il@com
Sat Aug 4 21:47:17 CEST 2018
Yup, I worked it out in time... for future reference, as.matrix calls
`format` on logicals, converting them to the form seen.
On Sat, 4 Aug 2018 at 17:53, Berry, Charles <ccberry using ucsd.edu> wrote:
>
>
> > On Aug 4, 2018, at 6:55 AM, David Hugh-Jones <davidhughjones using gmail.com>
> wrote:
> >
> > I'm not sure why this is happening:
> >
> > tmp <- data.frame(
> > a = letters[1:2],
> > b=c(TRUE, FALSE),
> > stringsAsFactors = FALSE
> > )
> > idx <- matrix(c(1, 2, 2, 2), 2, byrow = TRUE)
> > tmp[idx]
> >
> > [1] " TRUE" "FALSE"
> >
>
> From ?"[.data.frame"
>
> Extract.data.frame {base}
> .
> .
> .
> Matrix indexing (x[i] with a logical or a 2-column integer matrix i) using
> [ is not recommended. For extraction, x is first coerced to a matrix.
>
> [...]
>
> Thus, something like
>
> as.matrix(tmp)
>
> happens converting every column to character. Dig deeper by reading
>
> ?matrix
>
> and see the paragraph on `as.matrix' under `Details'.
>
> HTH,
>
> Chuck
>
--
Sent from Gmail Mobile
[[alternative HTML version deleted]]
More information about the R-devel
mailing list