- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个问题在这里已经有了答案:
Why does R use partial matching?
(1 个回答)
8 年前关闭。
f=function(s,abc=0,def=0) {
return(s+def)
}
f(3)
[1] 3
f(3,d=4)
[1] 7
最佳答案
有三种主要的方法来匹配参数。这些在 Argument Matching 中进行了讨论。 R Language Definition的部分,我在下面复制了相关部分:
The first thing that occurs in a function evaluation is the matching of formal to the actual or supplied arguments. This is done by a three-pass process:
- Exact matching on tags. For each named supplied argument the list of formal arguments is searched for an item whose name matches exactly. It is an error to have the same formal argument match several actuals or vice versa.
- Partial matching on tags. Each remaining named supplied argument is compared to the remaining formal arguments using partial matching. If the name of the supplied argument matches exactly with the first part of a formal argument then the two arguments are considered to be matched. It is an error to have multiple partial matches. Notice that if
f <- function(fumble, fooey) fbody
, thenf(f = 1, fo = 2)
is illegal, even though the 2nd actual argument only matchesfooey
.f(f = 1, fooey = 2)
is legal though since the second argument matches exactly and is removed from consideration for partial matching. If the formal arguments contain...
then partial matching is only applied to arguments that precede it.- Positional matching. Any unmatched formal arguments are bound to unnamed supplied arguments, in order. If there is a
...
argument, it will take up the remaining arguments, tagged or not.
...
的参数。争论。如上所述,如果参数发生在
...
之后在函数的参数列表中,您必须在调用该函数时命名该参数
如果 因为位置匹配不适用于这些参数。例如:
foo <- function(x, ..., y) {
y
}
y
的唯一方法是在函数调用中命名,例如:
foo(y = 1)
关于r - 为什么 R 函数中拼写不完整的名称可以找到匹配项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15767036/
我想通过用语言环境拼写数字来本地化数字,最后使用了 ICU4J。我在许多地区都取得了成功,但似乎没有在格鲁吉亚、土耳其或阿拉伯语等地区完成。 ULocale locale = new ULocale(
我正在研究具有端点的 swagger API 规范: /authorizations 我也想为这个端点定义一个替代拼写(授权)。这可能吗?或者我是否需要为每个拼写定义一个单独的路由? /authori
我正在研究具有端点的 swagger API 规范: /authorizations 我也想为这个端点定义一个替代拼写(授权)。这可能吗?或者我是否需要为每个拼写定义一个单独的路由? /authori
我使用 Yahoo BOSS 的时间很短。这是一个简单的搜索 API,但拼写建议支持确实不那么强大。周围的人是否有任何关于在 BOSS 上获得更好的拼写建议的想法。 最佳答案 不幸的是,甚至在几年后,
问题如下:我正在编写一个强力解密器来破解一些 super secret 代码(这是一场竞赛,而不是犯罪),结果证明这是不可能的:树中的节点太多需要被搜查。为了克服这个问题,我认为检查中间“解决方案”以
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
我是一名优秀的程序员,十分优秀!