Jak obliczyć skośność i kurtozę w pythonie


W statystyce skośność i kurtoza to dwa sposoby pomiaru kształtu rozkładu.

Skośność jest miarą skośności rozkładu. Wartość ta może być dodatnia lub ujemna.

  • Ujemna skośność wskazuje, że ogon znajduje się po lewej stronie rozkładu, który rozciąga się w stronę bardziej ujemnych wartości.
  • Dodatnie pochylenie wskazuje, że ogon znajduje się po prawej stronie rozkładu, który rozciąga się w kierunku bardziej dodatnich wartości.
  • Wartość zero oznacza, że w rozkładzie nie ma asymetrii, co oznacza, że rozkład jest doskonale symetryczny.

Kurtoza jest miarą tego, czy rozkład jest ciężki czy lekki w porównaniu z rozkładem normalnym .

  • Kurtoza rozkładu normalnego wynosi 3.
  • Jeśli dany rozkład ma kurtozę mniejszą niż 3, nazywa się go playkurtycznym , co oznacza, że ma tendencję do tworzenia mniejszej liczby i mniej skrajnych wartości odstających niż rozkład normalny.
  • Jeśli dany rozkład ma kurtozę większą niż 3, nazywa się go leptokurtycznym , co oznacza, że ma tendencję do tworzenia większej liczby wartości odstających niż rozkład normalny.

Uwaga: W niektórych wzorach (definicja Fishera) od kurtozy odejmuje się 3, aby ułatwić porównanie z rozkładem normalnym. Stosując tę definicję, rozkład miałby większą kurtozę niż rozkład normalny, gdyby miał wartość kurtozy większą niż 0.

W tym samouczku wyjaśniono, jak obliczyć zarówno skośność, jak i kurtozę danego zbioru danych w Pythonie.

Przykład: Skośność i spłaszczanie w Pythonie

Załóżmy, że mamy następujący zbiór danych:

 data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81]

Aby obliczyć przykładową skośność i kurtozę tego zbioru danych, możemy użyć funkcji skew() i kurt() z biblioteki Scipy Stata z następującą składnią:

  • odchylenie (tablica wartości, odchylenie = fałsz)
  • kurt (tablica wartości, błąd = fałsz)

Argumentu odchylenie=Fałsz używamy do obliczenia skośności i kurtozy próbki w przeciwieństwie do skośności i kurtozy populacji.

Oto jak używać tych funkcji dla naszego konkretnego zbioru danych:

 data = [88, 85, 82, 97, 67, 77, 74, 86, 81, 95, 77, 88, 85, 76, 81]

#calculate sample skewness
skew(data, bias= False )

0.032697

#calculate sample kurtosis
kurtosis(data, bias= False )

0.118157

Skośność wynosi 0,032697 , a kurtoza wynosi 0,118157 .

Oznacza to, że rozkład jest lekko skośny dodatnio i ma więcej wartości w ogonach w porównaniu do rozkładu normalnego.

Dodatkowe źródło: Kalkulator skośności i kurtozy

Można także obliczyć skośność dla danego zbioru danych, korzystając ze statystycznego kalkulatora skośności i kurtozy , który automatycznie oblicza skośność i kurtozę dla danego zbioru danych.

Dodaj komentarz

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