Premier message sur SO jamais si je suis impatient de recevoir des commentaires de certains anciens combattants dans R sur le forum. :)Read.csv ne compte pas les NA dans mon ensemble de données
J'ai un CSV file (2.52KB) que je suis actuellement incapable d'identifier NAs quand je lance le script identifiant NA suivant (en particulier dans la colonne ORG):
mydata = read.csv("DF_Cleanup_isNAError_Test.csv" header = TRUE, sep = ",", quote = "", dec = ".", fill = TRUE)
nan_count <-sapply(mydata, function(y) sum(length(which(is.na(y)))))
nan_count <- data.frame(nan_count)
nan_count
Quand j'isole les enregistrements avec des valeurs de NA Colonne ORG cependant (seulement 30 lignes au total) dans le control data set, exécutant le même script d'identification NA renvoie un nombre de 30 pour la colonne ORG. Cela est également attendu pour le script ci-dessus, mais ce n'est pas le cas.
mydata = read.csv("DF_Cleanup_isNAError_Control.csv" header = TRUE, sep = ",", quote = "", dec = ".", fill = TRUE)
nan_count <-sapply(mydata, function(y) sum(length(which(is.na(y)))))
nan_count <- data.frame(nan_count)
nan_count
Je suis complètement déconcerté en ce moment pourquoi il y aurait une différence avec l'ajout d'autres enregistrements dans l'ensemble de données lorsque rien n'a changé au sujet des dossiers individuels en question. L'ensemble de données de test n'est encore qu'un sous-ensemble des données de population totales; J'ai environ 850 000 lignes au total, mais j'ai pensé que c'était un bon début pour isoler le problème. section
Voici mon information actuelle session
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
Matrix products: default
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United
States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] dplyr_0.7.2
loaded via a namespace (and not attached):
[1] compiler_3.4.1 magrittr_1.5 assertthat_0.2.0 R6_2.2.2
tools_3.4.1 bindrcpp_0.2 glue_1.1.1 tibble_1.3.3
[9] Rcpp_0.12.12 pkgconfig_2.0.1 rlang_0.1.1 bindr_0.1
Il pourrait être lu comme "NA" '. Pourriez-vous essayer 'which (y ==" NA ")' (dans le contexte de votre code) pour tester cela? – CPak
Essayez d'ajouter 'na.strings =" "' à votre appel 'read.csv'. – jav
problème secondaire: votre 'spply' peut être remplacé par' colSums (is.na (myData) ' –