如何通过名称的开头字母R中
关闭选择变量列表说我有如何通过名称的开头字母R中
x = list(tau = 3, ga = rep(0,3))
但是创建的列表,现在我想测试一个变量t
或g
包含在x
,所以我用 is.null(x$t)
当然它返回到FALSE
因为x$t = 3
。我怎样才能关闭这种行为?
更新:
OK,我的目标就是,识别,因为在我的代码g
和ga
两者都意味着充分和是变量的真实姓名,如果有一个变量g
载。也就是说,如果包含或不包含g
代表两种不同的情况,并且我没有要求巧妙地选择来自x
的变量。
我目前的方式是使用x[['g']]
,这返回我想要的。我在想我是否可以关闭这种全球环境行为?
您可以尝试类似:
x = list(tau = 3, ga = rep(0,3))
x[-which(substr(names(x),1,1)== "t")]
应该只返回$ga
。
编辑
如果你想不自动完成列表上搜索名称,避免使用$t
,而使用[["t"]]
。
在你的例子中,你会想要is.null(x[["t"]])
这是真实的。
是的,我现在正在使用这种方式。 –
如果这有助于你并回答了你的问题,请将此问题标记为左边的复选标记。 –
让我们来看看是否有人会回答我们是否可以在'option'中关闭这样的部分匹配,如果没有,那么您的是标记的。 –
如何关闭这种“部分美元匹配”行为,我认为这应该是关键。 –
请参阅编辑我的答案以获得正确答案。第一部分回答你的问题标题,编辑回答你的评论。 –