2014-11-19 2 views

ответ

14

проверить команду: NA!=NA: вы получите результат NA, следовательно сообщение об ошибке.

Вы должны использовать функцию is.na для if заявления на работу (в общем, всегда лучше использовать эту функцию для проверки NA значений):

comments = c("no","yes",NA) 
for (l in 1:length(comments)) { 
    if (!is.na(comments[l])) print(comments[l]) 
} 
[1] "no" 
[1] "yes" 
+1

... проверьте NA с is.na(), и в моем случае примите жестокую реальность, что она не NULL и что существуют NA и NULL. – Chris

+0

@ Крис есть функция 'is.null', хотя ;-) – Cath

3

Вы можете изменить, если условие к этому:

if (!is.na(comments[l])) print(comments[l]); 

Вы можете проверить только для NA значения с is.na().

+0

благодарю вас, проблема решена – user3582590

+0

@ user3582590 : пожалуйста, подумайте о принятии ответов, которые действительно отвечают на ваш вопрос, щелкнув маленькую галочку под подсчетом голосов ответа. Это определяет наиболее полезные ответы для будущих читателей. –

Смежные вопросы