HOWTO · R

NA Weglassen in R

Dieses Tutorial zeigt, wie Sie unnötige NA-Werte mit na.omit() in R entfernen.

Auf dieser Seite

Die Methode na.omit() von R lässt alle unnötigen Werte aus einem Datenrahmen in R weg. NA bezeichnet diese Werte.

Dieses Tutorial zeigt, wie man na.omit in R verwendet.

Verwenden Sie na.omit(), um NA-Werte aus einem Vektor in R zu entfernen

na.omit() kann NA-Werte aus einem Vektor entfernen; siehe Beispiel.

#define the vector
a <- c(13, NA, NA, 7, NA, 19)

print(a)

#remove NA values from vector using na.omit
a <- na.omit(a)

a

Der Code druckt zuerst den Vektor mit NA-Werten und lässt dann die NA-Werte weg. Siehe Ausgabe:

[1] 13 NA NA  7 NA 19

[1] 13  7 19
attr(,"na.action")
[1] 2 3 5
attr(,"class")
[1] "omit"

Die Ausgabe für na.omit sind die restlichen Werte und die Indexnummern von NA-Werten; Wir können die einfachen verbleibenden Werte erhalten, indem wir den folgenden Code verwenden.

#define the vector
a <- c(13, NA, NA, 7, NA, 19)

print(a)

#remove NA values from vector using na.omit, as.numeric
a <- as.numeric(na.omit(a))

a

Die Ausgabe wird einfach sein.

[1] 13 NA NA  7 NA 19

[1] 13  7 19

Verwenden Sie na.omit(), um Zeilen mit NA-Werten aus einem Datenrahmen in R zu entfernen

na.omit() kann die Zeilen mit NA-Werten aus einem Datenrahmen entfernen. Siehe Beispiel:

Delftstack = data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                        LastName=c(NA, 'Cena', 'Chandler', 'McCool', 'Nitro'),
                        Id=c(101, 102, NA, 104, NA),
                        Designation=c('CEO', 'Project Manager', NA , 'Junior Dev', 'Intern'))


# Data frame before omit
Delftstack

# Use omit
Delftstack <- na.omit(Delftstack)

# Data frame after omit
Delftstack

Der obige Code entfernt alle Zeilen mit NA-Werten aus dem angegebenen Datenrahmen. Siehe Ausgabe:

      Name LastName  Id     Designation
1     Jack     <NA> 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler  NA            <NA>
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro  NA          Intern

      Name LastName  Id     Designation
2     John     Cena 102 Project Manager
4 Michelle   McCool 104      Junior Dev

Verwenden Sie na.omit(), um Zeilen mit NA-Werten aus bestimmten Spalten in R zu entfernen

na.omit() kann basierend auf den Spalten angegeben werden; Wir können den Spaltennamen übergeben, um Zeilen mit NA-Werten basierend auf dieser bestimmten Spalte zu entfernen. Siehe Beispiel:

Delftstack = data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                        LastName=c(NA, 'Cena', 'Chandler', 'McCool', 'Nitro'),
                        Id=c(101, 102, NA, 104, NA),
                        Designation=c('CEO', 'Project Manager', NA , 'Junior Dev', 'Intern'))


# Data frame before omit
Delftstack

# Use omit
Delftstack <- Delftstack[!(is.na(Delftstack$Id)), ]

# Data frame after omit
Delftstack

Der Code entfernt die Zeilen mit NA-Werten basierend auf der Id-Spalte. Siehe Ausgabe:

      Name LastName  Id     Designation
1     Jack     <NA> 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler  NA            <NA>
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro  NA          Intern

      Name LastName  Id     Designation
1     Jack     <NA> 101             CEO
2     John     Cena 102 Project Manager
4 Michelle   McCool 104      Junior Dev