相关疑难解决方法(0)

如何测试列表元素是否存在?

问题

我想测试一个列表的元素是否存在,这是一个例子

foo <- list(a=1)
exists('foo') 
TRUE   #foo does exist
exists('foo$a') 
FALSE  #suggests that foo$a does not exist
foo$a
[1] 1  #but it does exist
Run Code Online (Sandbox Code Playgroud)

在这个例子中,我知道foo$a存在,但测试返回FALSE.

我查了一下,?exists发现了with(foo, exists('a')返回TRUE,但不明白为什么要exists('foo$a')返回FALSE.

问题

  • 为什么要exists('foo$a')回来FALSE
  • 是使用with(...)首选方法吗?

r

97
推荐指数
4
解决办法
9万
查看次数

标签 统计

r ×1