[R] Getting subsets of a data frame

Liaw, Andy andy_liaw at merck.com
Sat Apr 16 14:46:55 CEST 2005


Because a data frame can hold different data types (even matrices) in
different variables, one row of it can not be converted to a vector in
general (where all elements need to be of the same type).

Andy

> From: Fernando Saldanha
> 
> Thanks, it's interesting reading.
> 
> I also noticed that 
> 
> sw[, 1, drop = TRUE] is a vector (coerces to the lowest dimension)
> 
> but
> 
> sw[1, , drop = TRUE] is a one-row data frame (does not convert it into
> a list or vector)
> 
> FS
> 
> 
> On 4/16/05, Bill.Venables at csiro.au <Bill.Venables at csiro.au> wrote:
> > You should look at
> > 
> > > ?"["
> > 
> > and look very carefully at the "drop" argument.  For your example
> > 
> > > sw[, 1]
> > 
> > is the first component of the data frame, but
> > 
> > > sw[, 1, drop = FALSE]
> > 
> > is a data frame consisting of just the first component, as
> > mathematically fastidious people would expect.
> > 
> > This is a convention, and like most arbitrary conventions 
> it can be very
> > useful most of the time, but some of the time it can be a very nasty
> > trap.  Caveat emptor.
> > 
> > Bill Venables.
> > 
> > -----Original Message-----
> > From: r-help-bounces at stat.math.ethz.ch
> > [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of 
> Fernando Saldanha
> > Sent: Saturday, 16 April 2005 1:07 PM
> > To: Submissions to R help
> > Subject: [R] Getting subsets of a data frame
> > 
> > I was reading in the Reference Manual about Extract.data.frame.
> > 
> > There is a list of examples of expressions using [ and [[, with the
> > outcomes. I was puzzled by the fact that, if sw is a data 
> frame, then
> > 
> > sw[, 1:3]
> > 
> > is also a data frame,
> > 
> > but
> > 
> > sw[, 1]
> > 
> > is just a vector.
> > 
> > Since R has no scalars, it must be the case that 1 and 1:1 
> are the same:
> > 
> > > 1 == 1:1
> > [1] TRUE
> > 
> > Then why isn't sw[,1] = sw[, 1:1] a data frame?
> > 
> > FS
> > 
> > ______________________________________________
> > R-help at stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide!
> > http://www.R-project.org/posting-guide.html
> >
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html
> 
> 
>




More information about the R-help mailing list