如何使条件替换在 R 中更有效?

How to make conditional replacement more efficient in R?

我使用 case_when 将多个变量替换为新变量,但我注意到有很多重复代码,我想知道是否有更有效的方法来执行此操作。 基本上我想避免每次都写 col_a == ""

tt <- df1%>%
  mutate(col_a = case_when(
      col_a == "GK" ~ "Goalkeeper",

      col_a == "RB" |
      col_a == "LB" |
      col_a == "RWB" |
      col_a == "LWB" ~ "Side Back",

      col_a == "LCB" |
      col_a == "CB"|
      col_a == "RCB" ~ "C Defender",

      TRUE ~ col_a))

谢谢,

使用%in%-

library(dplyr)

tt <- df1%>%
  mutate(col_a = case_when(
    col_a == "GK" ~ "Goalkeeper",
    col_a %in% c("RB","LB","RWB","LWB") ~ "Side Back",
    col_a %in%  c("LCB", "CB", "RCB") ~ "C Defender",
    TRUE ~ col_a))