【发布时间】:2023-01-05 15:33:35
【问题描述】:
我想复制名称以数字为后缀的列的某个子集。新列的数字后缀应添加一定的偏移量(在以下示例中为 12)。
源数据框:
所需的数据框:
不幸的是,我的代码根本无法正常工作,而且看起来复杂得不合理。
library(tidyverse)
df <- data.frame(
v_1 = c('Aira', 'Ben', 'Cat'),
v_2 = c(23, 32, 27),
v_3 = c(90, 98, 95)
)
# Duplicate columns using mutate + across
df2 <- df %>% mutate(
across(
.cols = starts_with('v'),
.names = paste("x", toString(strtoi(strsplit({.col}, '_')[[1]][2]) + 12, sep="_"))
)
)
【问题讨论】: