如果我想检查我使用的变量是否存在
exists("variable")
在我正在制作的剧本中,我有时会遇到一个"下标超出范围的问题"运行后,然后我的脚本停止。在if语句中,我希望能够检查下标是否超出范围。如果结果是"是",则执行脚本的替代和平,如果"不是",那么只需按预期继续脚本。
在我的想象中,如果是列表,它看起来像是:
if {subscriptOutofBounds(listvariable[[number]]) == TRUE) {
## execute this part of the code
}
else {
## execute this part
}
R中是否存在类似的东西?
答案 0 :(得分:0)
您可以将列表的长度与其他数字进行比较。例如,假设我有一个索引为3的列表,并想通过将它们与1到100的向量进行比较来进行检查。
lol <- list(c(1:10),
c(100:200),
c(3:50))
lol
check_out <- function(x) {
maxi <- max(x)
if (maxi > length(lol)) {
#Excecute this part of code
print("Yes")
}
else {
#Excecute this part of code
print("No")
}
}
num <- 1:100
check_out(num)
向量num的最大数目是100,并且您的列表只有3个索引(或长度= 3),因此它将超出列表的范围,然后返回是 >