Dopo aver letto un set di dati:
dataset <- read.csv("forR.csv")
- Come posso ottenere R per darmi il numero di casi che contiene?
- Inoltre, il valore restituito includerà i casi di esclusione omessi
na.omit(dataset)?
Dopo aver letto un set di dati:
dataset <- read.csv("forR.csv")
na.omit(dataset)?Risposte:
datasetsarà un frame di dati. Poiché non ho forR.csv, creerò un piccolo frame di dati per l'illustrazione:
set.seed(1)
dataset <- data.frame(A = sample(c(NA, 1:100), 1000, rep = TRUE),
B = rnorm(1000))
> head(dataset)
A B
1 26 0.07730312
2 37 -0.29686864
3 57 -1.18324224
4 91 0.01129269
5 20 0.99160104
6 90 1.59396745
Per ottenere il numero di casi, contare il numero di righe usando nrow()o NROW():
> nrow(dataset)
[1] 1000
> NROW(dataset)
[1] 1000
Per contare i dati dopo omettendo il NA, utilizzare gli stessi strumenti, ma avvolgere datasetin na.omit():
> NROW(na.omit(dataset))
[1] 993
La differenza tra NROW()e NCOL()e le loro varianti minuscole ( ncol()e nrow()) è che le versioni minuscole funzionano solo per oggetti che hanno dimensioni (matrici, matrici, frame di dati). Le versioni maiuscole funzioneranno con i vettori, che sono trattati come se fossero una matrice a 1 colonna e sono robusti se finisci per sottoporre i tuoi dati in modo tale che R lasci una dimensione vuota.
In alternativa, usa complete.cases()e sumit ( complete.cases()restituisce un vettore logico [ TRUEo FALSE] che indica se ci sono osservazioni NAper qualsiasi riga.
> sum(complete.cases(dataset))
[1] 993
Brevemente:
Esegui dim(dataset)per recuperare sia n che k , puoi anche usare nrow(df)e ncol(df)(e anche NROW(df)e NCOL(df)- le varianti sono necessarie anche per altri tipi).
Se trasformi ad es. Via dataset <- na.omit(dataset), i casi scompaiono e non vengono conteggiati. Ma se lo fai, ad esempio, summary(dataset) i casi di NA vengono considerati.
str()quanto fornisce altri dettagli utili sul tuo oggetto. Può spesso spiegare perché una colonna non si sta comportando come dovrebbe (fattore anziché numerico, ecc.).