Hoe na.rm in r te gebruiken (met voorbeelden)


U kunt het argument na.rm=TRUE gebruiken om ontbrekende waarden uit te sluiten bij het berekenen van beschrijvende statistieken in R.

 #calculate mean and exclude missing values
mean(x, na. rm = TRUE )

#calculate sum and exclude missing values 
sum(x, na. rm = TRUE )

#calculate maximum and exclude missing values 
max(x, na. rm = TRUE )

#calculate standard deviation and exclude missing values 
sd(x, na. rm = TRUE )

De volgende voorbeelden laten zien hoe u dit argument in de praktijk kunt gebruiken met vectoren en dataframes.

Voorbeeld 1: na.rm gebruiken met vectoren

Stel dat we het gemiddelde, de som, het maximum en de standaarddeviatie proberen te berekenen van de volgende vector in R die ontbrekende waarden bevat:

 #define vector with some missing values
x <- c(3, 4, 5, 5, 7, NA, 12, NA, 16)

mean(x)

[1] NA

sum(x)

[1] NA

max(x)

[1] NA

sd(x)

[1] NA

Elk van deze functies retourneert de waarde NA .

Om ontbrekende waarden uit te sluiten bij het uitvoeren van deze berekeningen, kunnen we eenvoudigweg het argument na.rm = TRUE als volgt opnemen:

 #define vector with some missing values
x <- c(3, 4, 5, 5, 7, NA, 12, NA, 16)

mean(x, na. rm = TRUE )

[1] 7.428571

sum(x, na. rm = TRUE )

[1] 52

max(x, na. rm = TRUE )

[1] 16

sd(x, na. rm = TRUE )

[1] 4.790864

Merk op dat we elke berekening met succes hebben kunnen uitvoeren, terwijl ontbrekende waarden zijn uitgesloten.

Voorbeeld 2: na.rm gebruiken met dataframes

Stel dat we het volgende dataframe in R hebben dat ontbrekende waarden bevat:

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, NA, 3, 2),
                 var3=c(3, 3, NA, 6, 8),
                 var4=c(1, 1, 2, 8, NA))

#view data frame
df

  var1 var2 var3 var4
1 1 7 3 1
2 3 7 3 1
3 3 NA NA 2
4 4 3 6 8
5 5 2 8 NA

We kunnen de functie apply() gebruiken om beschrijvende statistieken voor elke kolom in het dataframe te berekenen en het argument na.rm = TRUE gebruiken om ontbrekende waarden uit te sluiten bij het uitvoeren van deze berekeningen:

 #calculate mean of each column
apply(df, 2, mean, na. rm = TRUE )

var1 var2 var3 var4 
3.20 4.75 5.00 3.00 

#calculate sum of each column
apply(df, 2, sum, na. rm = TRUE )

var1 var2 var3 var4 
  16 19 20 12 

#calculate max of each column
apply(df, 2, max, na. rm = TRUE )

var1 var2 var3 var4 
   5 7 8 8 

#calculate standard deviation of each column
apply(df, 2, sd, na. rm = TRUE )

    var1 var2 var3 var4 
1.483240 2.629956 2.449490 3.366502

Wederom konden we elke berekening met succes voltooien, zonder ontbrekende waarden uit te sluiten.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken met ontbrekende waarden in R kunt uitvoeren:

Hoe is.null te gebruiken in R
Hoe na.omit te gebruiken in R
Hoe gebruik je is.na in R?

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert