Jak obliczyć statystyki opisowe w r (z przykładem)


Statystyki opisowe to wartości opisujące zbiór danych.

Pomagają nam zrozumieć, gdzie znajduje się środek zbioru danych, a także rozkład wartości w zbiorze danych.

Istnieją dwie funkcje, których możemy użyć do obliczenia statystyk opisowych w R:

Metoda 1: Użyj funkcji podsumowania().

 summary(my_data)

Funkcja podsumowanie() oblicza następujące wartości dla każdej zmiennej w ramce danych w R:

  • Minimum
  • 1. kwartyl
  • Mediana
  • Mieć na myśli
  • Trzeci kwartyl
  • Maksymalny

Metoda 2: użyj funkcji sapply().

 sapply(my_data, sd, na. rm = TRUE )

Funkcji sapply() można używać do obliczania statystyk opisowych innych niż te obliczone za pomocą funkcji podsumowanie() dla każdej zmiennej w ramce danych.

Na przykład powyższa funkcja sapply() oblicza odchylenie standardowe każdej zmiennej w ramce danych.

Poniższy przykład pokazuje, jak używać tych dwóch funkcji do obliczania statystyk opisowych dla zmiennych w ramce danych w języku R.

Przykład: obliczanie statystyk opisowych w R

Załóżmy, że mamy następującą ramkę danych w R, która zawiera trzy zmienne:

 #create data frame
df <- data. frame (x=c(1, 4, 4, 5, 6, 7, 10, 12),
                 y=c(2, 2, 3, 3, 4, 5, 11, 11),
                 z=c(8, 9, 9, 9, 10, 13, 15, 17))

#view data frame
df

   X Y Z
1 1 2 8
2 4 2 9
3 4 3 9
4 5 3 9
5 6 4 10
6 7 5 13
7 10 11 15
8 12 11 17

Możemy użyć funkcji podsumowania() do obliczenia różnych statystyk opisowych dla każdej zmiennej:

 #calculate descriptive statistics for each variable
summary(df)

       xyz Min. : 1,000 Min. : 2,000 Min. : 8.00  
 1st Qu.: 4,000 1st Qu.: 2,750 1st Qu.: 9.00  
 Median: 5,500 Median: 3,500 Median: 9.50  
 Mean: 6.125 Mean: 5.125 Mean: 11.25  
 3rd Qu.: 7,750 3rd Qu.: 6,500 3rd Qu.: 13.50  
 Max. :12,000 Max. :11,000 Max. :17.00

Nawiasów możemy także używać do obliczania wyłącznie statystyk opisowych dla konkretnych zmiennych w ramce danych:

 #calculate descriptive statistics for 'x' and 'z' only
summary(df[, c(' x ', ' z ')])

       xz Min. : 1,000 Min. : 8.00  
 1st Qu.: 4.000 1st Qu.: 9.00  
 Median: 5.500 Median: 9.50  
 Mean: 6.125 Mean: 11.25  
 3rd Qu.: 7.750 3rd Qu.: 13.50  
 Max. :12,000 Max. :17.00 

Możemy również użyć funkcji sapply() do obliczenia konkretnych statystyk opisowych dla każdej zmiennej.

Na przykład poniższy kod pokazuje, jak obliczyć odchylenie standardowe każdej zmiennej:

 #calculate standard deviation for each variable
sapply(df, sd, na. rm = TRUE )

       X Y Z
3.522884 3.758324 3.327376

Możemy również użyć funkcji () w sapply() do obliczenia statystyk opisowych.

Na przykład poniższy kod pokazuje, jak obliczyć zakres dla każdej zmiennej:

 #calculate range for each variable
sapply(df, function(df) max(df, na. rm = TRUE )-min(df, na. rm = TRUE ))

 X Y Z
11 9 9

Na koniec możemy utworzyć złożoną funkcję, która oblicza statystyki opisowe, a następnie użyć tej funkcji z funkcją sapply() .

Na przykład poniższy kod pokazuje, jak obliczyć tryb każdej zmiennej w ramce danych:

 #define function that calculates mode
find_mode <- function (x) {
  u <- unique(x)
  tab <- tabulate(match(x, u))
  u[tab == max(tab)]
}

#calculate mode for each variable
sapply(df, find_mode)

$x
[1] 4

$y
[1] 2 3 11

$z
[1] 9

Z wyniku możemy zobaczyć:

  • Tryb zmiennej x wynosi 4 .
  • Tryb zmiennej y to 2 , 3 i 11 (ponieważ każda z tych wartości pojawia się najczęściej)
  • Tryb zmiennej z wynosi 9 .

Używając funkcji podsumowanie() i sapply() możemy obliczyć dowolne statystyki opisowe dla każdej zmiennej w ramce danych.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak utworzyć tabele podsumowujące w R
Jak znaleźć rozstęp międzykwartylowy w R
Jak usunąć wartości odstające w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *