重命名数据框的列

标签 r tidyverse purrr

我有一个数据框,基本上看起来像这样(包含数据):

t <- data.frame(x1 = 1:5, x2 = 1:5, stingsAsFactors = FALSE)

我有另一个数据框,其中包含原始列名称和每个列的替换

n <- data.frame(abb = c("x1", "x2"), erf = c("XX1", "XX2"), stringsAsFactors = FALSE)

我想做的是根据数据帧 n 中的规范重命名数据帧 t 中的列。我的问题是我不知道如何使用 map 做到这一点。为什么下面的错误是:

map2_dfr(n$abb, n$erf, function(x, y) rename(t, !!y := x))

最佳答案

我们可以使用rename_at

library(dplyr)
t %>%
    rename_at(n$abb, ~ n$erf)

关于重命名数据框的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54806775/

相关文章:

r - 带plyr的多核,MC

R:foreach 不适用于导出图形,例如 png 或 ggsave

r - 在 vector/data.frame 列上应用返回 data.frame/tibble 的函数并绑定(bind)结果

r - 在 R 中将列表拆分为单独的数据框

r - 在ggplot散点图中以特定方式覆盖点

r - 如何从使用内联 C++ 过渡到制作自己的 R 包?

r - 过滤向量的非零元素的管道/dplyr友好方式

r - 无法使用map_dbl进行总结

r - 从列中提取日期并在 R 中缺少年份时添加年份

r - 使用 r 中的 `for loop` 函数将 `map` 翻译成 purrr