我正在 R 工作,如果可能的话,我更喜欢 dplyr 解决方案。
样本数据:
data.frame(
col1 = c("a", "b", "c", "d"),
col2 = c("a", "b", "d", "a"),
col3 = rep("a", 4L),
col4 = c("a", "b", "d", "a"),
col5 = c("a", "a", "c", "d"),
col6 = rep(c("b", "a"), each = 2L)
)
Run Code Online (Sandbox Code Playgroud)
| 第 1 列 | 列2 | 第 3 列 | 第 4 列 | 第5栏 | 第 6 栏 |
|---|---|---|---|---|---|
| A | A | A | A | A | 乙 |
| 乙 | 乙 | A | 乙 | A | 乙 |
| C | d | A | d | C | A |
| d | A | A | A | d … |
在 R 中,当我使用 mutate across 时,对于新创建的列,我想删除现有列名称中的一串文本,然后在末尾添加后缀。
\n这是一个例子:
\n数据框:
\nd <- data.frame(alpha_rate=1:3, beta_rate=4:6, gamma_rate=7:9)\n\nd\n alpha_rate beta_rate gamma_rate\n1 1 4 7\n2 2 5 8\n3 3 6 9\n\nmy_function <- function(x) {(x*8)}\n\ncolumns_i_want <- c("alpha_rate", "beta_rate")\n\nd <- d %>% mutate(across(all_of(columns_i_want), my_function, .names = "{col}_new"))\nRun Code Online (Sandbox Code Playgroud)\n数据框现在具有以下列名称:
\n在名称参数中是否有一种方法可以将\xc2\xa0这些新创建的列称为此(即删除速率,然后添加后缀_new):
\n