我觉得奇怪的是这甚至有可能:
> x <- list(abc = 2, def = 4)
> x$a
[1] 2理想情况下,如果有人试图访问list元素而元素不存在,我希望强制错误。如果结果为NULL,我甚至会很好。但很明显,R试图变得过于聪明,并找到另一个类似于调用的属性的字段。
我试过查看options,但似乎没有任何选项可以更改列表访问行为。
提前谢谢。
> R.version
_
platform x86_64-apple-darwin13.4.0
arch x86_64
os darwin13.4.0
system x86_64, darwin13.4.0
status
major 3
minor 2.3
year 2015
month 12
day 10
svn rev 69752
language R
version.string R version 3.2.3 (2015-12-10)
nickname Wooden Christmas-Tree 我知道,这是旧的R版。我们的模型是在生产中,似乎没有打算升级Prod版本的任何时间很快。
更新:找到了一种将部分匹配转换为警告的方法:
> options(warnPartialMatchDollar = TRUE)
> x$a
[1] 2
Warning message:
In x$a : partial match of 'a' to 'abc'发布于 2019-02-14 00:43:47
当变量名称部分匹配时,可以指定在options中返回参数为options的错误
options(warnPartialMatchDollar = TRUE, warn = 2)https://stackoverflow.com/questions/54680826
复制相似问题