Es kann Situationen geben, in denen Sie den Namen der gesuchten Variablen nicht genau kennen, z. B. wenn ein Array von Ergebnissen durch ein Warteschlangensystem erstellt wurde. Diese können möglicherweise mit "ls" und seinem Argument "pattern", das einen regulären Ausdruck erwartet, angegangen werden.
Die Funktion "exists" könnte auf diese Weise neu implementiert werden als
exists <-function(variablename) {
#print(ls(env=globalenv()))
return(1==length(ls(pattern=paste("^",variablename,"$",sep=""),env=globalenv())))
}
Bei der Vorbereitung dieser Antwort war ich ein wenig überrascht über die Notwendigkeit der Angabe der Umgebung beim Aufruf von ls() innerhalb einer Funktion. Vielen Dank dafür, Stackoverflow! Es gibt auch ein Attribut "all.names", das ich auf true setzen sollte, aber ausgelassen habe.