Вместо того, чтобы проверять, является ли оно NULL или пустой символьной строкой, имеет смысл проверить, имеет ли она ненулевую длину и является ли строка не пустой. Тогда первый этап if
будет обрабатывать основной случай, а этап else
будет обрабатывать менее распространенный случай, за которым легче следовать, чем наоборот.
if (length(x) && nzchar(x)) x else NA