首页 > 解决方案 > 在自定义函数 R 中传入 df 和 column

问题描述

我希望gsub在同一个 df 上应用多个调用。所以,我想创建一个函数,但似乎没有工作。这是我得到的:

get_clean_party <- function(df, feature){
  df$feature <- gsub("D","Democrat", df$feature)
  df$feature <- gsub("R","Republican", df$feature)
}

有什么建议么?

标签: rfunctiongsub

解决方案


如果您正在执行完全匹配,您可以使用dplyr'recode函数。$当您将列名作为变量时,也永远不要使用。

get_clean_party <- function(df, feature){
  df[[feature]] <- dplyr::recode(df[[feature]], D = 'Democrat', R = 'Republican')
  df
}
df <- get_clean_party(df, "col_name")

推荐阅读