[R] rename cols

hadley wickham h.wickham at gmail.com
Tue Sep 12 14:31:43 CEST 2006


> For a newcomer who wants to rename variable "fksm" and "klmk" in a dataframe of
> with 439 variables there is not easy and intuitive solution. That person has to
> spend a lot of time listing columns and counting columns or doing string
> searches or using brackets within brackets within brackets to get a simple thing
> done. Is there a simple function or solution to this in R without using an
> add-on package?

I use:

rename <- function(x, replace) {
	replacement <-  replace[names(x)]
	names(x)[!is.na(replacement)] <- replacement[!is.na(replacement)]
	x
}

(which is available in the reshape package)

You use it like:

df <- data.frame(a=1:2, b=3:4)
df <- rename(df, c(a="variable 1"))

Hadley



More information about the R-help mailing list