[Rd] Warning when indexing data.frame with FALSE
Peter Dalgaard
p.dalgaard at biostat.ku.dk
Mon Jul 31 14:43:06 CEST 2006
Prof Brian Ripley <ripley at stats.ox.ac.uk> writes:
> On Mon, 31 Jul 2006, hadley wickham wrote:
>
> > Sorry, a better example is:
> >
> > > data.frame(a=1)[FALSE]
> > NULL data frame with 1 rows
> > > data.frame(a=1)[NULL]
> > NULL data frame with 1 rows
> >
> > vs
> >
> > > data.frame()[FALSE]
> > Warning in is.na(nm) : is.na() applied to non-(list or vector)
> > NULL data frame with 0 rows
> > > data.frame()[NULL]
> > Warning in is.na(nm) : is.na() applied to non-(list or vector)
> > NULL data frame with 0 rows
>
> It's reasonable:
>
> > names(data.frame())
> NULL
>
> which is a problem as data frames are supposed to have names.
> So the bug is in data.frame.
To wit:
> d <- data.frame()
> names(d) <- character(0)
> d[FALSE]
NULL data frame with 0 rows
> d[NULL]
NULL data frame with 0 rows
--
O__ ---- Peter Dalgaard Øster Farimagsgade 5, Entr.B
c/ /'_ --- Dept. of Biostatistics PO Box 2099, 1014 Cph. K
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
More information about the R-devel
mailing list