我正在尝试使用mutate
基于特定列的值创建一个新列。
示例最终数据框(我正在尝试创建new_col
):
x = tibble(colA = c(11, 12, 13),
colB = c(91, 92, 93),
col_to_use = c("colA", "colA", "colB"),
new_col = c(11, 12, 93))
我想做类似的事情:
x %>% mutate(new_col = col_to_use)
除了列内容之外,我想将它们转换为变量。我开始:
col_name = "colA"
x %>% mutate(new_col = !!as.name(col_name))
这适用于静态变量。但是,我一直无法更改变量来表示该列。如何根据不同列的内容取列名?
这个问题基本上与此相反:dplyr - mutate: use dynamic variable names。我无法使解决方案适应我的问题。