在 mutate 中使用带有字符串的向量和粘贴

问题描述 投票:0回答:1

我正在尝试使用“粘贴”在 tibble 中构建一个 ID 以及一个列名称作为字符串的向量:

library(tidyverse)

df <- tribble(
  ~PERIOD, ~CODE, ~VALUE,
  1995, "A", 10,
  1996, "B", 20
)
df

mygroup <- c("PERIOD", "CODE")

我想要这个结果

# A tibble: 2 x 4
  PERIOD CODE  VALUE ID    
   <dbl> <chr> <dbl> <chr> 
1   1995 A        10 1995_A
2   1996 B        20 1996_B

当然下面的代码并不能达到我想要的效果

df %>% 
  mutate(ID = paste(mygroup, collapse = "_"))

当它产生时

  PERIOD CODE  VALUE ID         
   <dbl> <chr> <dbl> <chr>      
1   1995 A        10 PERIOD_CODE
2   1996 B        20 PERIOD_CODE

我已经尝试过!和大括号,但没有任何效果。

r tidyverse
1个回答
0
投票
df %>%
  mutate(id = paste(PERIOD, CODE, sep = "_"))

# A tibble: 2 × 4
  PERIOD CODE  VALUE id    
   <dbl> <chr> <dbl> <chr> 
1   1995 A        10 1995_A
2   1996 B        20 1996_B
© www.soinside.com 2019 - 2024. All rights reserved.