0
Я делаю некоторый анализ, и всякий раз, когда найдено NA
, мой цикл останавливается, который берет один за другим. Поэтому я хочу сказать, если моя ценность не NA
идти вперед и далее в цикле. если это NA
, просто проигнорируйте его и перейдите к следующему. или даже вернуть NA
. Я попытался это:Как игнорировать NA в R?
x=c(5,4,6,4,2,1,5,NA)
if (x != NA){
y=x+2}
Error in if (x != NA) { : missing value where TRUE/FALSE needed
Будьте осторожны с использованием векторов в 'if()' statement. В вашем случае 'x' является вектором, и если вы просто используете его внутри' if() ', будет использоваться только первый элемент' x'. Если вы хотите проверить каждый элемент 'x' за NA, попробуйте что-то вроде этого:' y = ifelse (! Is.na (x), x + 2, NA) ' –
' y <- as.vector (na .omit (x)) + 2' (если вы не против того, чтобы в большинстве случаев безвредные атрибуты висели вокруг, вы можете опустить 'as.vector()'. – hrbrmstr
@scoa, который не будет работать для примера ternor. – hrbrmstr