r - 如何将参数列表传递给R中的方法?
问题描述
我正在尝试将参数作为列表传递给方法。我正在创建要传递给 data.frame 的方法。例子:
dfApply <- function(df, ...) {
UseMethod("dfApply", df)
}
dfApply.sample <- function(df, size, ...) {
# Stuff
df <- sample_frac(df, size = size)
return(df)
}
现在,如果我调用该函数:
args <- list(size = 0.5)
class(df) <- c("sample", class(df))
df <- dfApply(df, args)
该方法仍将其作为 list() 接收。
有没有办法传递这样的参数?
编辑:
正如评论中提到的,do.call()
解决了这个问题(现在),但我必须定义每个参数args
:
args <- list(df = df, size = 0.5)
class(df) <- c("sample", class(df))
df <- do.call(dfApply, args)
这是实现方法的明智方法吗?似乎不对。
解决方案
推荐阅读
- c++ - 如何输入每个单词都在字符串数组中的句子,直到用户按下回车键
- angular - 如何在 Angular 8 中创建具有反应形式的动态表?
- javascript - Javascript 使用 ES6 映射从对象数组中提取键
- sql-server - UNION 中的子查询选择不保留顺序
- c# - “我可以像在数组中那样使用索引来遍历列表。为什么我不能像在使用索引的数组中那样在列表中添加项目。”
- json - 兼容级别 100 SQL SERVER 2016 中的 OPENJSON
- ios - 从许多不同的 ViewController 呈现 ViewController 的最佳方式
- javascript - 如何在两个数字之间添加一个点?
- asp.net-mvc - 是否可以在没有 Windows 身份验证的情况下获取用户的域?
- c# - c# 使用资源文件缩短数据注释