Typy zmiennych w statystyce

typy_zmiennych_wyrowniajacy
Statystyka Strefa studenta
2022-02-01

Niezależnie od tego czy mówimy o statystyce, rachunku prawdopodobieństwa czy modelach uczenia maszynowego spotykamy się z pojęciem zmiennej (a tak właściwe to zmiennej losowej). Zmienne te dzielą się na różne typy i o tych typach dzisiaj sobie porozmawiamy. 

Pierwszy i główny podział uwzględnia zmienne ciągłe (ilościowe) i dyskretne (jakościowe/kategoryczne). W nawiasach podane są alternatywne nazwy dla typów zmiennych, jednak wydaje mi się, że mówiąc o statystyce czy uczeniu maszynowym częściej spotkamy nazwy podane w nawiasach, a w rachunku prawdopodobieństwa zdecydowanie króluje nazewnictwo zmienne ciągłe i dyskretne. My będziemy dalej trzymać się nazw z nawiasów

Główna różnica pomiędzy zmiennymi ilościowymi a jakościowymi

O zmiennych ilościowych mówimy, gdy ta zmienna może przyjmować bardzo dużo wartości i te wartości są liczbami. Będzie to np. wzrost, wiek wyrażony w latach, pojemność silnika itp. 

Z kolei o zmiennych kategorycznych mówimy, gdy mamy ograniczoną liczbę potencjalnych wartości i zazwyczaj zgodnie z nazwą wyrażają one jakąś kategorię. Będzie to np. płeć, wykształcenie (podstawowe, średnie wyższe itd.), województwo itp.

Uwaga!

Analizując dane nie możemy z góry założyć, że zmienne jakościowe rozpoznamy po typie danych w zbiorze. Mogą one być zakodowane (np. płeć może być wyrażona jako  wartości 0 i 1).

Dokładniejszy podział zmiennych

W badaniach psychologicznych zwraca się dużą uwagę na skalę pomiaru zmiennych i ze względu na tę skalę rozważa się dokładniejszy podział zmiennych – zaproponowany przez Stanleya Smitha Stevensa. Rozróżnia się wówczas dwa typy zmiennych ilościowych (zmienne na skali ilorazowej i interwałowej) oraz dwa typy zmiennych jakościowych (zmienne na skali nominalnej i porządkowej). Warto pamiętać, że nie jest to jedyny istniejący podział, jednak jest  on najpopularniejszy. Chociaż skale pomiaru pochodzą z psychologii i to właśnie tam zyskały największą popularność, mogą być przydatne również w innych dziedzinach. Dowiedz się dlaczego! 👇👇👇👇

Zmienne na skali ilorazowej

O zmiennych na skali ilorazowej mówimy, gdy zmienna posiada tzw. zero absolutne, czyli nie jest możliwe osiągnięcie wartości poniżej zera. Będzie to np. wzrost (oczywiście nie możemy mieć ujemnego wzrostu), wiek, pojemność silnika albo temperatura mierzona w stopniach Kelvina. 

Skąd nazwa zmienna ilorazowa?

W matematyce ilorazem nazywa się wynik z dzielenia. Ten typ zmiennych poniekąd jest właśnie z tym związany, bo skala ilorazowa jest jedyną skalą, gdzie wynik podzielenia lub pomnożenia przez siebie dwóch wartości będzie miał jakikolwiek sens. Np. jeżeli ja mam 25 lat a moja mama 50, to (25*2=50) jest ona ode mnie dwa razy starsza, ma to sens, jest to zrozumiałe. Oczywiście odejmowanie czy dodawanie do siebie wartości również będzie miało sens, a otrzymane wyniki można łatwo zinterpretować.

Zmienne na skali interwałowej (przedziałowej)

O zmiennych na skali przedziałowej mówimy, gdy zmienna NIE posiada zera absolutnego, czyli możemy osiągnąć wartości poniżej zera. Będzie to np. aktualny rok czy temperatura wyrażona w stopniach Celsjusza. Tutaj w odróżnieniu od skali ilorazowej podzielenie lub pomnożenie przez siebie dwóch wartości nie ma żadnego sensu. Jeżeli dziś jest 10 stopni, a jutro 20, to wcale nie oznacza, że jutro będzie dwa razy cieplej! Za to w takiej skali odejmowanie i dodawanie ma sens. Kontynuując przykład pogody – stwierdzenie, że jutro będzie o 10 stopni cieplej jak najbardziej ma sens.

Zmienne na skali porządkowej

Zmiennie na skali porządkowej zaliczają się do zmiennych jakościowych, więc nie są już one liczbami jak w poprzednie typy zmiennych. Mamy tu do czynienia z takimi kategoriami, które można bez problemu uporządkować. Np. pytanie o  wielkość miasta z jakiego pochodzisz, gdzie możliwe odpowiedzi to: 

  • wieś 
  • miasto do 10 tys. mieszkańców
  • miasto do 100 tys. mieszkańców
  • miasto powyżej 100 tys. mieszkańców  

W opisanym przypadku nasza zmienna przyjmuje 4 wartości. Bez problemu umiemy wskazać, że wieś jest mniejsza niż miasto do 10 tys. itp. Podobnie jest z wykształceniem. Jeżeli będziemy wykształcenie rozważać jako zmienną, to jesteśmy potencjalne odpowiedzi uporządkować (podstawowe < średnie < wyższe itp.)

Zmienne na skali nominalnej

Ostatnia skala jaką się rozważa jest skala nominalna. Zaliczają się tu takie zmienne jakościowe (kategoryczne), których nie jesteśmy w stanie w żaden sposób uporządkować. Będzie to na przykład płeć czy województwo. Nie powiemy przecież, że małopolskie to “mniej” niż opolskie. Takie stwierdzenie oczywiście nie ma żadnego sensu. 

Po co nam te skale?

W psychologii skale pomiaru zazwyczaj wykorzystuje się przy przygotowaniu badań. Mogą one być przydatne również w życiu osób zawodowo związanych z danymi. Zwłaszcza, gdy musimy zmierzyć się z przeprowadzeniem testów statystycznych albo preprocessingiem danych przed modelowaniem.  Wówczas znajomość poziomów pomiaru może nam trochę pomóc. Na przykład przy kodowaniu zmiennych jakościowych.

Tutaj popularne są dwie metody. Możemy wykorzystać tzw. one hot encoding, gdzie zmienną jakościową zamieniamy na kilka zmiennych i każda z nich przyjmuje wartość 0 albo 1. Np. mając zmienną, która przyjmuje wartości “Tak”, “Nie”, Nie wiem”, zamienimy je na 3 zmienne o takich nazwach i jeżeli zmienna przyjmowała wartość “TAK”, to w takim kodowaniu zmienna “TAK” przyjmie 1 a “Nie” i “Nie wiem” przyjmą 0. Tak zakodowaną zmienną można łatwo zinterpretować jako występowanie czegoś. Jeżeli nasza nowa zmienna (Tak, Nie lub Nie wiem) przyjmuje 1, to znaczy, że dana cecha (odpowiedź) wystąpiła i 0 w przeciwnym wypadku. 

Drugą możliwością kodowania zmiennych jest tzw. Label encoding, czyli  zamiana wszystkich kategorii na kolejne liczby, np. rozważając wykształcenie możemy zmienić wartości  “podstawowe”, “średnie”, “wyższe” na 1, 2, 3 odpowiednio. Wówczas zmienna nadal pozostaje jedną zmienną, ale wyrażona jako liczba jest przystępna dla modeli. 

Które kodowanie wybrać?

Tu z pomocą przychodzą nam skale pomiaru! Chcąc zakodować województwo (skala nominalna) za pomocą Label encoding możemy mieć problem, bo otrzymamy liczby od 1 do 16 (od 0 do 15) i model będzie w trakcie uczenia się przyjmował, że 1 to mniej niż 2 itp. Jest to oczywiście błędne rozumowanie, bo jak wspomnieliśmy wcześniej województwo małopolskie to wcale nie jest mniej niż opolskie. Dlatego zmienne na skali nominalnej musimy kodować za pomocą one hot encodera, bo on wskazuje nam na obecność lub nieobecność czegoś. Z kolei przy zmiennych na skali porządkowej już moglibyśmy sobie pozwolić na Label Encoding (ale oczywiście zakodowane wartości muszą odpowiadać przyjętemu porządkowi). Jeżeli używasz Pythona i chcesz mieć pewność, że oczekiwany porządek zostanie zachowany, to należy użyć szczególnej odmiany Label Encodera – Ordinal Encodera. Więcej na ten temat dowiesz się z posta poświęconego kodowaniu zmiennych – https://analitycznyumysl.pl/dlaczego-label-encoder-moze-ci-zaszkodzic/ .

Podsumowanie

Główny podział zmiennych zakłada istnienie zmiennych ilościowych (odnoszą się do liczb) i jakościowych (odnoszą się do kategorii). Można rozważać bardziej dokładny podział – ze względu na poziom pomiaru zmiennej. Taki dokładniejszy podział może nam pomóc m.in. zdecydować o sposobie kodowania zmiennych jakościowych.

Dziękuję, że tu jesteś! Zostaw po sobie jakiś znak 😊 Będzie mi niezmiernie miło jeżeli zostawisz komentarz 😉 

Subskrybuj
Powiadom o
guest
2 komentarzy
Najnowsze
Najstarsze Najczęściej oceniane
Zobacz wszystkie komentarze
Iwona
Gość
Iwona
7 miesięcy temu

Dziękuję ❤️

Ola
Gość
Ola
2 lat temu

Super post! Liczę na więcej tego typu wpisów 🙂