代码之家  ›  专栏  ›  技术社区  ›  Alex

选择与字符串名称dplyr[重复]匹配的列

  •  0
  • Alex  · 技术社区  · 10 年前

    我试图创建一个函数 dplyr 在里面。然而,我似乎不太明白如何从 data.frame 。我正在尝试执行类似于以下示例的操作:

    test_df <- data.frame(A=1:30)
    my_function <- function(x, var){
        x %>%
            summarize(my_mean = mean(var))
    }
    my_function(test_df, "A")
    

    产生此错误的原因:

    警告消息: 意思是。默认(“A”):参数不是数字或逻辑:返回NA。

    有什么办法解决这个问题吗?

    1 回复  |  直到 10 年前
        1
  •  1
  •   jeremycg    10 年前

    可能最简单的解决方法是从 . :

    my_function <- function(x, var){
        x %>%
            summarize(my_mean = mean(.[[var]]))
    }