通过 excel 文件 R 重命名数据框中的列

Renaming columns in data frame by excel file R

我在 R 中有一个包含多列的数据框,例如 帮助1|帮助2|帮助3... 我有一个包含以下列的 excel 文件:

我想让 R 检查 excel 文件,并根据 new_name 列重命名 DF colnames

help_org|help_fam|help_friend

names(df) <- ref_df$new_name[match(names(df), ref_df$old_name)]
df
#     help_org   help_fam help_friend
#1 -0.56047565  1.7150650   1.2240818
#2 -0.23017749  0.4609162   0.3598138
#3  1.55870831 -1.2650612   0.4007715
#4  0.07050839 -0.6868529   0.1106827
#5  0.12928774 -0.4456620  -0.5558411

其中 ref_df 是来自 excel 文件的数据,该文件有两列(old_namenew_name)。

ref_df <- readr::read_excel('excel_data.xlsx')

df是你原来的数据改列名。

对于这个例子,我使用的数据是:

set.seed(123)
df <- data.frame(help1 = rnorm(5), help2 = rnorm(5), help3 = rnorm(5))

ref_df <- structure(list(old_name = c("help1", "help2", "help3"), 
new_name = c("help_org", "help_fam", "help_friend")), 
class = "data.frame", row.names = c(NA, -3L))