Comment détecter les valeurs null dans un vecteur
Quel est le meilleur moyen de détecter les valeurs null dans un vecteur?
Si j'ai le vecteur ci-dessous et que vous voulez savoir que la 4e place est null comment pourrais-je le faire
vx <- c(1, 2, 3, NULL, 5)
is.null(vx)
[1] FALSE
est.null() retourne seulement 1 Faux et j'aimerai obtenir:
FALSE FALSE FALSE TRUE FALSE
Un vecteur peut pas contenir
mettre
NULL
. Regardez length(vx)
.mettre
NA
au lieu de NULL
dans le cas où vous créez votre propre vecteur et puis essayez is.na(vx)
OriginalL'auteur user3022875 | 2015-06-08
Vous devez vous connecter pour publier un commentaire.
Comme mentionné dans les commentaires,
NULL
n'apparaîtra pas danslength(vx)
. C'est un objet dans la R des valeurs non définies. De CRAN documentation:Mais votre question peut encore avoir des possibilités d'apprentissage à l'égard de listes. Il s'affiche ici. Comme dans:
Pour tenter d'identifier les
NULL
valeur dans un très vaste ensemble de données peut être difficile pour le novice de R les utilisateurs. Il y a différentes techniques, mais en voici un qui a fonctionné pour moi quand j'en avais besoin.Si il y a des caractères, puis remplacer dans
is.character
ou quelle que soit la classe s'applique.!unlist(lapply(vlist, is.numeric))
au lieu desapply(vlist, is.null)
? Le premier pourrait se compliquer si vous avez des éléments de la liste qui sont un mélange de caractère, numérique, etc.Aucune raison du tout. merci pour la suggestion!
Il est encore plus efficace (et plus sûr) pour utiliser
vapply
.À ajouter à la réponse de @Roland.
OriginalL'auteur Pierre Lafortune
Il est possible que quelqu'un (comme moi) peut venir à la recherche pour
is.null()
, vraiment besoinis.na()
. Si oui, rappelez-vous (comme moi) que R est à la fois unNULL
etNA
objet.NULL
signifie qu'il n'y a pas de valeur alors queNA
signifie que la valeur est inconnue. Si vous êtes à la recherche pour les valeurs manquantes dans un vecteur de valeurs, ce que vous êtes probablement après estis.na()
.OriginalL'auteur Joshua Cook