Faktor v R: Kategorická proměnná a spojité proměnné
Co je faktor v R?
Faktor v R je proměnná používaná ke kategorizaci a ukládání dat s omezeným počtem různých hodnot. Ukládá data jako vektor celočíselných hodnot. Faktor v R je také známý jako kategorická proměnná, která ukládá jak řetězcové, tak celočíselné hodnoty dat jako úrovně. Faktor se většinou používá ve statistickém modelování a průzkumné analýze dat s R.
V datové sadě můžeme rozlišit dva typy proměnných: kategorický si nepřetržitý.
- V popisné statistice pro kategorické proměnné v R je hodnota omezená a obvykle je založena na konkrétní konečné grupě. Například kategorickou proměnnou v R mohou být země, rok, pohlaví, povolání.
- Spojitá proměnná však může nabývat libovolných hodnot, od celého čísla po desetinnou. Můžeme mít například výnos, cenu akcie atd..
Kategorické proměnné
Kategorické proměnné v R jsou uloženy do faktoru. Podívejme se níže na kód pro převod znakové proměnné na proměnnou faktoru v R. Znaky nejsou v algoritmu strojového učení podporovány a jediným způsobem je převést řetězec na celé číslo.
Syntax
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
argumenty:
- x: Vektor kategorických dat v R. Musí to být řetězec nebo celé číslo, nikoli desítkové.
- Úrovně: Vektor možných hodnot přijatých x. Tento argument je nepovinný. Výchozí hodnota je jedinečný seznam položek vektoru x.
- Štítky: Přidejte štítek ke kategoriálním datům x v R. Například 1 může mít štítek „muž“, zatímco 0 může mít štítek „žena“.
- objednané: Určete, zda mají být úrovně seřazeny v kategorických datech v R.
Příklad:
Vytvořme faktorový datový rámec.
# Create gender vector
gender_vector <- c("Male", "Female", "Female", "Male", "Male")
class(gender_vector)
# Convert gender_vector to a factor
factor_gender_vector <-factor(gender_vector)
class(factor_gender_vector)
Výstup:
## [1] "character" ## [1] "factor"
Je důležité transformovat a šňůra do proměnné faktoru v R, když provádíme úlohu strojového učení.
Kategorickou proměnnou v R lze rozdělit na nominální kategoriální proměnná si ordinální kategoriální proměnná.
Nominální kategorická proměnná
Kategorická proměnná má několik hodnot, ale na pořadí nezáleží. Například muž nebo žena. Kategorické proměnné v R nemají řazení.
# Create a color vector
color_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')
# Convert the vector to factor
factor_color <- factor(color_vector)
factor_color
Výstup:
## [1] blue red green white black yellow ## Levels: black blue green red white yellow
Z faktoru_barva nemůžeme určit pořadí.
Řadová kategorická proměnná
Ordinální kategoriální proměnné mají přirozené uspořádání. Můžeme určit pořadí, od nejnižšího po nejvyšší s pořadím = TRUE a od nejvyššího po nejnižší s pořadím = FALSE.
Příklad:
K počítání hodnot pro každou proměnnou faktoru v R můžeme použít souhrn.
# Create Ordinal categorical vector
day_vector <- c('evening', 'morning', 'afternoon', 'midday', 'midnight', 'evening')
# Convert `day_vector` to a factor with ordered level
factor_day <- factor(day_vector, order = TRUE, levels =c('morning', 'midday', 'afternoon', 'evening', 'midnight'))
# Print the new variable
factor_day
Výstup:
## [1] evening morning afternoon midday midnight evening
Příklad:
## Levels: morning < midday < afternoon < evening < midnight # Append the line to above code # Count the number of occurence of each level summary(factor_day)
Výstup:
## morning midday afternoon evening midnight ## 1 1 1 2 1
R nařídil úroveň od „rána“ do „půlnoci“, jak je uvedeno v závorce úrovní.
Spojité proměnné
Proměnné spojité třídy jsou výchozí hodnotou v R. Jsou uloženy jako číselné nebo celé číslo. Můžeme to vidět z datasetu níže. mtcars je vestavěná datová sada. Shromažďuje informace o různých typech automobilů. Můžeme jej importovat pomocí mtcars a zkontrolovat třídu proměnné mpg, míle na galon. Vrací číselnou hodnotu označující spojitou proměnnou.
dataset <- mtcars class(dataset$mpg)
Výstup
## [1] "numeric"
