V tomto článku se podíváme na to, co jsou to kategoriální proměnné, jak je vytvořit a jak s nimi v R pracovat.

Příklad 1: Vytvoření kategoriální proměnné

Kategoriální proměnná, jak už název napovídá, je proměnná, která vyjadřuje příslušnost k určité kategorii. V R se tomuto typu proměnné říká factor, nadále proto budeme používat tento pojem.

Factor může „vypadat“ jako písmena i jako čísla. Důležité ovšem je, že R tato písmena nebo čísla interpretuje jako příslušnost k určité kategorii.

Ukažme si příklad. Založíme si dvě proměnné (vektory). V první budou čísla 0 a 1. Ve druhé budou písmena Z a M. Obojí může představovat příslušnost k nějaké kategorii (žena, muž).

R chápe první proměnnou jako vektor čísel (numeric), druhou proměnnou jako vektor textových řetězců (character), což lze ověřit příkazem str.

Obě proměnné můžeme snadno převést na factor příkazemas.factor. Nazvěme si takto upravené proměnné af, bf.

Když si nyní tyto proměnné vypíšeme, vypadají skoro stejně jako proměnné a, b, s tím rozdílem, že se objeví řádek Levels: ten nám říká, jaké různé kategorie proměnná obsahuje.

Příklad 2: Operace s kategoriálními proměnnými

Na první to vypadá, že mezi „obyčejnými čísly“ a kategoriálními proměnnými vlastně není zásadní rozdíl. R ovšem s kategoriálními proměnnými pracuje odlišným způsobem. Zaměřme se nyní na proměnné a a af.

Vektor a můžeme snadno sečíst.

Pro af to ale neplatí. Když se o to pokusíme, R nám sdělí, že sčítání kategoriálních proměnných nemá smysl. Čísla 0 a 1 totiž již nejsou „obyčejná čísla“, ale označení kategorie.

Je řada funkcí, které vyžadují, aby vstupní proměnné byly kategoriální. Například t-test rozdílu středních hodnot v různých skupinách (kategoriích) nebude fungovat, použijeme-li „obyčejná čísla“ a ne kategorie.

Dalším příkladem toho, že R pracuje rozdílně s číselnými a kategoriálními proměnnými, jsou grafy. Vytvořme si nyní proměnnou vek, která bude představovat věk pěti různých lidí.

Zakreslíme nejprve graf závislosti věku na proměnné a.

Argument pch v zadaném příkazu pouze „ztmaví puntíky“, aby byly lépe vidět. Výsledný graf vypadá takto:

Nyní zakreslíme graf závislosti věku na proměnné af.

Vidíme, že vypadá úplně jinak: jedná se o graf, kterému říkáme v angličtině boxplot, v češtině krabicový graf. Znázorňuje rozdělení hodnot podle různých kategorií. Tlustá černá čára uprostřed každé „krabice“ přestavuje průměr v dané kategorii.

Takových „vychytávek“, kdy se bere v potaz fakt, že pracujeme s kategoriemi, a ne s čísly, umí R spoustu. Je ale třeba mít na paměti, že pokud pracujeme s několika různými kategoriemi, musí toR vědět. Jak toho dosáhneme? Při načtení dat z externích zdrojů R někdy rozpozná automaticky, že se jedná o kategoriální proměnnou. To můžeme ověřit příkazem str. Pokud se to R rozpoznat nepodařilo, můžeme „ručně“ změnit proměnnou na kategoriální příkazem as.factor.

Napsat komentář

Vaše emailová adresa nebude publikována.

*

smazat formulářOdeslat komentář