[R] Is there a quicker way to drop a data frame column than setting it to NULL?

Peter Ehlers ehlers at ucalgary.ca
Sun Jan 24 14:11:41 CET 2010


Dimitri Shvorob wrote:
> If I want to drop columns x, y, z from dataframe df, is there a better
> alternative to
> 
> df$x = NULL
> df$y = NULL
> df$z = NULL
> 
> There are sufficiently many columns remaining to make 
> 
> df = subset(df, select = c(a,b,c,d[etc]))
> 
> cumbersome.

You can use subset with the select argument specifying
which variables to omit:

df = subset(df, select = !names(df) %in% c('x', 'y', 'z'))

or just

df[!names(df) %in% c('x', 'y', 'z')]

  -Peter Ehlers

> 
> Thank you.

-- 
Peter Ehlers
University of Calgary



More information about the R-help mailing list