Jak używać na.rm w r (z przykładami)
Możesz użyć argumentu na.rm=TRUE , aby wykluczyć brakujące wartości podczas obliczania statystyk opisowych w 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 )
Poniższe przykłady pokazują, jak w praktyce używać tego argumentu z wektorami i ramkami danych.
Przykład 1: Używanie na.rm z wektorami
Załóżmy, że próbujemy obliczyć średnią, sumę, maksimum i odchylenie standardowe następującego wektora w R, który zawiera brakujące wartości:
#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
Każda z tych funkcji zwraca wartość NA .
Aby wykluczyć brakujące wartości podczas wykonywania tych obliczeń, możemy po prostu dołączyć argument na.rm = TRUE w następujący sposób:
#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
Należy pamiętać, że udało nam się pomyślnie wykonać każde obliczenie, wykluczając brakujące wartości.
Przykład 2: Używanie na.rm z ramkami danych
Załóżmy, że mamy następującą ramkę danych w R, która zawiera brakujące wartości:
#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
Możemy użyć funkcji Apply() do obliczenia statystyk opisowych dla każdej kolumny w ramce danych i użyć argumentu na.rm = TRUE , aby wykluczyć brakujące wartości podczas wykonywania tych obliczeń:
#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
Po raz kolejny udało nam się pomyślnie ukończyć każde obliczenie, wykluczając brakujące wartości.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonać inne typowe zadania z brakującymi wartościami w R:
Jak używać is.null w R
Jak używać na.omit w R
Jak używać is.na w R