gpt4 book ai didi

r - 为什么在inside()中=和<-不相等?

转载 作者:行者123 更新时间:2023-12-04 13:51:35 24 4
gpt4 key购买 nike

> within( list(a="a",b="b"), c="c" )
Error in eval(expr, envir, enclos) : argument is missing, with no default
> within( list(a="a",b="b"), c<-"c" )
$a
[1] "a"

$b
[1] "b"

$c
[1] "c"

我不确定这两个为什么不相等。似乎 =版本由于 c而被解释为一个名为 ...的参数。有什么办法可以禁用此行为?我试过了,
within( list(a="a",b="b"), `c`="c" )

但这也失败了。

最佳答案

您认为c="c"(或该形式的任何子句)被解释为提供的参数是正确的。不,没有办法禁用它-大概是在R解析器级别进行了处理。
=<-之间的差异记录在?"<-"

The operators ‘<-’ and ‘=’ assign into the environment in which they are evaluated. The operator ‘<-’ can be used anywhere, whereas the operator ‘=’ is only allowed at the top level (e.g., in the complete expression typed at the command prompt) or as one of the subexpressions in a braced list of expressions.



“表达式括号列表”的主要示例是函数主体,您可以通过键入以下内容进行验证: is(body(plot.default))length(body(plot.default))

关于r - 为什么在inside()中=和<-不相等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16528831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com