Čo je faktor v R?
Faktor v R je premenná, ktorá sa používa na kategorizáciu a ukladanie údajov a ktorá má obmedzený počet rôznych hodnôt. Ukladá údaje ako vektor celočíselných hodnôt. Faktor v R je tiež známy ako kategorická premenná, ktorá ukladá hodnoty reťazca aj celého čísla ako úrovne. Faktor sa väčšinou používa pri štatistickom modelovaní a analýze prieskumných údajov s R.
V množine údajov môžeme rozlíšiť dva typy premenných: kategorické a spojité .
- V deskriptívnej štatistike pre kategorické premenné v R je hodnota obmedzená a zvyčajne vychádza z konkrétnej konečnej skupiny. Napríklad kategorickou premennou v R môžu byť krajiny, rok, pohlavie, povolanie.
- Spojitá premenná však môže nadobúdať ľubovoľné hodnoty, od celých čísel po desatinné. Napríklad môžeme mať výnosy, cenu akcie atď.
Kategorické premenné
Kategorické premenné v R sa ukladajú do faktora. Poďme skontrolovať nasledujúci kód, aby sme premenili znakovú premennú na premennú faktora v R. Znaky nie sú podporované v algoritme strojového učenia a jediným spôsobom je prevod reťazca na celé číslo.
Syntax
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
Argumenty:
- x : Vektor kategorických údajov v R. Musí to byť reťazec alebo celé číslo, nie desatinné číslo.
- Úrovne : Vektor možných hodnôt prijatých x. Tento argument je voliteľný. Predvolená hodnota je jedinečný zoznam položiek vektora x.
- Menovky : Pridajte štítok k x kategorickým údajom v R. Napríklad 1 môže mať menovku „male“, zatiaľ čo 0, menovku „female“.
- ordered : Určte, či sa majú úrovne zoradiť v kategorických údajoch v R.
Príklad:
Vytvorme faktorový dátový rámec.
# Create gender vectorgender_vector <- c("Male", "Female", "Female", "Male", "Male")class(gender_vector)# Convert gender_vector to a factorfactor_gender_vector <-factor(gender_vector)class(factor_gender_vector)
Výkon:
## [1] "character"## [1] "factor"
Pri vykonávaní úlohy strojového učenia je dôležité transformovať reťazec na premennú faktora v R.
Kategorickú premennú v R možno rozdeliť na nominálnu kategorickú premennú a radovú kategorickú premennú .
Nominálna kategorická premenná
Kategorická premenná má niekoľko hodnôt, ale na poradí nezáleží. Napríklad mužský alebo ženský. Kategorické premenné v R nemá usporiadanie.
# Create a color vectorcolor_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')# Convert the vector to factorfactor_color <- factor(color_vector)factor_color
Výkon:
## [1] blue red green white black yellow## Levels: black blue green red white yellow
Z factor_color nemôžeme rozoznať žiadnu objednávku.
Poradová kategorická premenná
Obyčajné kategorické premenné majú prirodzené usporiadanie. Môžeme určiť poradie, od najnižšej po najvyššiu s objednávkou = TRUE a od najvyššej po najnižšiu s objednávkou = FALSE.
Príklad:
Pomocou súhrnu môžeme spočítať hodnoty pre každú premennú faktora v R.
# Create Ordinal categorical vectorday_vector <- c('evening', 'morning', 'afternoon', 'midday', 'midnight', 'evening')# Convert `day_vector` to a factor with ordered levelfactor_day <- factor(day_vector, order = TRUE, levels =c('morning', 'midday', 'afternoon', 'evening', 'midnight'))# Print the new variablefactor_day
Výkon:
## [1] evening morning afternoon middaymidnight evening
Príklad:
## Levels: morning < midday < afternoon < evening < midnight# Append the line to above code# Count the number of occurence of each levelsummary(factor_day)
Výkon:
## morning midday afternoon evening midnight## 1 1 1 2 1
R nariadil úroveň od „rána“ do „polnoci“, ako je uvedené v zátvorkách úrovní.
Kontinuálne premenné
Kontinuálne premenné triedy sú predvolenou hodnotou v R. Sú uložené ako číselné alebo celé číslo. Vidíme to z nižšie uvedeného súboru údajov. mtcars je vstavaný súbor údajov. Zhromažďuje informácie o rôznych typoch automobilov. Môžeme to importovať pomocou mtcars a skontrolovať triedu premennej mpg, míľa na galón. Vráti číselnú hodnotu, ktorá označuje súvislú premennú.
dataset <- mtcarsclass(dataset$mpg)
Výkon
## [1] "numeric"