This function renames variables in a data frame, i.e. it renames the columns of the data frame.

var_rename(x, ..., verbose = TRUE)

rename_variables(x, ..., verbose = TRUE)

rename_columns(x, ..., verbose = TRUE)

Arguments

x

A data frame.

...

A named vector, or pairs of named vectors, where the name (lhs) equals the column name that should be renamed, and the value (rhs) is the new column name.

verbose

Logical, if TRUE, a warning is displayed when variable names do not exist in x.

Value

x, with new column names for those variables specified in ....

Examples

dummy <- data.frame(
  a = sample(1:4, 10, replace = TRUE),
  b = sample(1:4, 10, replace = TRUE),
  c = sample(1:4, 10, replace = TRUE)
)

rename_variables(dummy, a = "first.col", c = "3rd.col")
#>    first.col b 3rd.col
#> 1          3 4       3
#> 2          1 3       1
#> 3          3 1       3
#> 4          4 2       2
#> 5          2 1       4
#> 6          1 1       3
#> 7          2 3       4
#> 8          1 1       4
#> 9          1 2       2
#> 10         4 1       2

# using quasi-quotation
library(rlang)
#> 
#> Attaching package: ‘rlang’
#> The following objects are masked from ‘package:purrr’:
#> 
#>     %@%, as_function, flatten, flatten_chr, flatten_dbl, flatten_int,
#>     flatten_lgl, flatten_raw, invoke, splice
#> The following objects are masked from ‘package:sjlabelled’:
#> 
#>     as_character, as_label
#> The following object is masked from ‘package:sjmisc’:
#> 
#>     is_empty
v1 <- "first.col"
v2 <- "3rd.col"
rename_variables(dummy, a = !!v1, c = !!v2)
#>    first.col b 3rd.col
#> 1          3 4       3
#> 2          1 3       1
#> 3          3 1       3
#> 4          4 2       2
#> 5          2 1       4
#> 6          1 1       3
#> 7          2 3       4
#> 8          1 1       4
#> 9          1 2       2
#> 10         4 1       2

x1 <- "a"
x2 <- "b"
rename_variables(dummy, !!x1 := !!v1, !!x2 := !!v2)
#>    first.col 3rd.col c
#> 1          3       4 3
#> 2          1       3 1
#> 3          3       1 3
#> 4          4       2 2
#> 5          2       1 4
#> 6          1       1 3
#> 7          2       3 4
#> 8          1       1 4
#> 9          1       2 2
#> 10         4       1 2

# using a named vector
new_names <- c(a = "first.col", c = "3rd.col")
rename_variables(dummy, new_names)
#> Error in eval(.dots[[1]]): object 'new_names' not found