J'ai reçu ce message d'erreur :
Error in if (condition) { : missing value where TRUE/FALSE needed
ou
Error in while (condition) { : missing value where TRUE/FALSE needed
Qu'est-ce que cela signifie, et comment puis-je l'éviter ?
J'ai reçu ce message d'erreur :
Error in if (condition) { : missing value where TRUE/FALSE needed
ou
Error in while (condition) { : missing value where TRUE/FALSE needed
Qu'est-ce que cela signifie, et comment puis-je l'éviter ?
L'évaluation de condition
a donné lieu à un NA
. Le site if
conditionnel doit avoir soit un TRUE
ou FALSE
résultat.
if (NA) {}
## Error in if (NA) { : missing value where TRUE/FALSE needed
Cela peut arriver accidentellement comme résultat de calculs :
if(TRUE && sqrt(-1)) {}
## Error in if (TRUE && sqrt(-1)) { : missing value where TRUE/FALSE needed
Pour vérifier si un objet est manquant, utilisez is.na(x)
plutôt que x == NA
.
Voir également les erreurs connexes :
Erreur dans if/while (condition) { : l'argument est de longueur zéro
Erreur dans if/while (condition) : l'argument n'est pas interprétable comme logique.
if (NULL) {}
## Error in if (NULL) { : argument is of length zero
if ("not logical") {}
## Error: argument is not interpretable as logical
if (c(TRUE, FALSE)) {}
## Warning message:
## the condition has length > 1 and only the first element will be used
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
10 votes
L'opérateur double égal ne peut tolérer un
NA
de chaque côté. Si je définis :x = NA
et ensuite faire unif (x == NA){ ... }
alors cette erreur sera signalée au moment de l'exécution lorsque l'analyseur syntaxique examinera le côté gauche de la double égalité. Pour remédier à cette erreur, assurez-vous que chaque variable de votre conditionnel n'est pas NA en utilisant la fonctionis.na(your_variable)
.2 votes
Incroyable, cela a résolu un problème que j'avais avec une fonction observe() sur les daterangeinputs dans shiny.