na.strings = c() în R (Programare, R, Na)

lakshru a intrebat.

Sunt nou în R și am început să explorez na.strings = c() împreună cu funcția read.csv.

Am citit că, folosind această opțiune, toate valorile lipsă vor fi înlocuite cu NA, dar nu văd că se întâmplă acest lucru în fișierele mele. Nu văd nicio diferență în ieșire, în ciuda faptului că folosesc na.strings = c(). Vă rog să mă ajutați dacă îmi scapă ceva. În ambele cazuri, văd NA atunci când numeric lipsește, dar nu și atunci când char lipsește valoarea char. Așadar, la ce folosește această funcție?

Iată exemplul meu de fișier csv:

Char,Numeric
A,3
B, 
 ,5

Și codul meu:

DF_withoutNA = read.csv("filepath/R_NA.csv",header = TRUE)
DF_with = read.csv("filepath /R_NA.csv",header = TRUE,
                   na.strings = c("Char","Numeric"))
head(DF_withoutNA)
  Char Numeric
1    A       3
2    B      NA
3            5
head(DF_with)
  Char Numeric
1    A       3
2    B      NA
3            5

3 răspunsuri
mrbcuda

na.strings este pentru substituție în corpul fișierului, adică pentru a potrivi șiruri de caractere care trebuie înlocuite cu NA. Deci, cu exemplul tău, dacă treci șirul gol "" ar trebui să se potrivească cu șirul de caractere lipsă, care este lipsit de spațiu alb.

x <- read.csv("filepath/R_NA.csv",header=TRUE,na.strings=c(""))
x
 Char Numeric
1    A       3
2    B      NA
3 <NA>       5

Comentarii

  • c("") este la fel ca "", , și header=TRUE este valoarea implicită în read.csv(). –  > Por Rich Scriven.
pogibas

care este utilitatea utilizării acestei funcții?

Aceasta înlocuiește valorile (de exemplu, caractere, numere) din fișierul csv cu NA. Dacă încercați read.csv("filepath/R_NA.csv", na.strings = "A") veți vedea că toate Adin csv au fost înlocuite cu NA‘s.

PS. na.strings este argumentul, nu funcția.

Vin Prabhu

na.string înlocuiește valorile lipsă cu ‘NA’ ca notație. Acest lucru trebuie făcut, de preferință, la începutul procesului de curățare a datelor.

Tags:,