【问题标题】:How to write a R function that uses other R functions as arguments? [closed]如何编写一个使用其他 R 函数作为参数的 R 函数? [关闭]
【发布时间】:2021-01-11 15:56:01
【问题描述】:

这是我必须编写的函数。它接受一个函数作为参数和数据。

evaluate <- function(func, dat){},输出应如下所示:

  1. evaluate(sum, c(2, 4, 6)) 应该计算为 12
  2. evaluate(median, c(7, 40, 9)) 应该评估为 9
  3. evaluate(floor, 11.1) 应该评估为 11

我对如何编写这个函数感到困惑。

任何提示都有帮助!谢谢。

【问题讨论】:

    标签: r function arguments


    【解决方案1】:

    你可以试试这个:

    evaluate <- function(FUN, dat){
      return(FUN(dat))
    }
    

    【讨论】:

      【解决方案2】:

      你可以使用do.call:

      evaluate <- function(fun, args){
        do.call(fun, args)}
      

      args 必须是一个列表:

      evaluate(sum, list(c(2, 4, 6)))
      

      【讨论】:

        猜你喜欢
        • 2023-01-30
        • 2021-03-31
        • 1970-01-01
        • 2021-07-30
        • 2021-01-15
        • 1970-01-01
        • 2019-03-11
        • 2019-02-11
        • 2019-08-19
        相关资源
        最近更新 更多