Skip to content

Instantly share code, notes, and snippets.

@earino
Created February 25, 2015 01:54
Show Gist options
  • Save earino/23e8c65c27f1c0d30e07 to your computer and use it in GitHub Desktop.
Save earino/23e8c65c27f1c0d30e07 to your computer and use it in GitHub Desktop.
column remapper
library(dplyr)
library(gdata)
sample1 <- data.frame(A=1:10, B=letters[1:10])
sample2 <- data.frame(B=11:20, C=letters[11:20])
rename_map <- list("A"="var1",
"B"="var2",
"C"="var3")
cols_to_rename <- matchcols(sample1, names(sample1), method=c("or"))
names(sample1) <- unlist(rename_map[cols_to_rename])
str(sample1)
cols_to_rename <- matchcols(sample2, names(sample2), method=c("or"))
names(sample2) <- unlist(rename_map[cols_to_rename])
str(sample2)
yields:
> library(dplyr)
> library(gdata)
>
> sample1 <- data.frame(A=1:10, B=letters[1:10])
> sample2 <- data.frame(B=11:20, C=letters[11:20])
>
> rename_map <- list("A"="var1",
+ "B"="var2",
+ "C"="var3")
>
> cols_to_rename <- matchcols(sample1, names(sample1), method=c("or"))
> names(sample1) <- unlist(rename_map[cols_to_rename])
> str(sample1)
'data.frame': 10 obs. of 2 variables:
$ var1: int 1 2 3 4 5 6 7 8 9 10
$ var2: Factor w/ 10 levels "a","b","c","d",..: 1 2 3 4 5 6 7 8 9 10
>
> cols_to_rename <- matchcols(sample2, names(sample2), method=c("or"))
> names(sample2) <- unlist(rename_map[cols_to_rename])
> str(sample2)
'data.frame': 10 obs. of 2 variables:
$ var2: int 11 12 13 14 15 16 17 18 19 20
$ var3: Factor w/ 10 levels "k","l","m","n",..: 1 2 3 4 5 6 7 8 9 10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment