мой код R заканчивает тем, что содержал изобилие операторов формы:
if (!is.null(aVariable)) {
do whatever
}
Но этот вид оператора трудно считать, потому что он содержит два отрицания. Я предпочел бы что-то как:
if (is.defined(aVariable)) {
do whatever
}
Делает a is.defined
введите функцию, которая делает противоположность! is.null существуют стандарт в R?
аплодисменты, yannick
Вы можете быть лучше отработаны, какая ценность типа ваша функция или код принимает, и спрашивая о том, что:
if (is.integer(aVariable))
{
do whatever
}
Это может быть улучшение по износчикам, поскольку он обеспечивает проверку типа. С другой стороны, это может уменьшить добычу вашего кода.
Альтернативно, просто сделайте функцию, которую вы хотите:
is.defined = function(x)!is.null(x)
Если это просто вопрос простого чтения, вы всегда можете определить свою собственную функцию:
is.not.null <- function(x) !is.null(x)
, чтобы вы могли использовать все это вдоль вашей программы.
is.not.null(3)
is.not.null(NULL)
IAN положить это в комментарий, но Я думаю, что это хороший ответ:
if (exists("aVariable"))
{
do whatever
}
Обратите внимание, что имя переменной цитируется.