Des colonnes de recherche avec l'ensemble des valeurs manquantes

Je suis en train d'écrire une fonction qui a besoin d'un vérifier sur si (et laquelle!) la colonne (variable) est l'ensemble des valeurs manquantes (NA, <NA>). Voici le fragment de la fonction:

test1 <- data.frame (matrix(c(1,2,3,NA,2,3,NA,NA,2), 3,3))
test2 <- data.frame (matrix(c(1,2,3,NA,NA,NA,NA,NA,2), 3,3))

na.test <-  function (data) {
  if (colSums(!is.na(data) == 0)){
      stop ("The some variable in the dataset has all missing value,
     remove the column to proceed")
      }
      }
na.test (test1)

Warning message:
In if (colSums(!is.na(data) == 0)) { :
  the condition has length > 1 and only the first element will be used

Q1: Pourquoi l'erreur ci-dessus et toutes les corrections ?

T2: Est-il un moyen pour savoir qui de colonnes ont tous NA, par exemple sortie de la liste (nom de variable ou de numéro de colonne)?

  • J'ai l'impression que cela doit avoir été une réponse avant: quelque chose comme names(data)[lapply(data,function(x) all(is.na(x)))]
  • Votre parenthèses sont mauvais. Écrire colSums(!is.na(data)) == 0 au lieu de colSums(!is.na(data) == 0).
InformationsquelleAutor SHRram | 2012-07-04