Faktor u R: kategoričke varijable & kontinuirane varijable
Što je faktor u R?
Faktor u R je varijabla koja se koristi za kategoriziranje i pohranu podataka, ima ograničen broj različitih vrijednosti. Pohranjuje podatke kao vektor cjelobrojnih vrijednosti. Faktor u R također je poznat kao kategorička varijabla koja pohranjuje vrijednosti podataka niza i cijelog broja kao razine. Faktor se uglavnom koristi u statističkom modeliranju i istraživačkoj analizi podataka s R.
U skupu podataka možemo razlikovati dvije vrste varijabli: kategoričan i stalan.
- U deskriptivnoj statistici za kategoričke varijable u R, vrijednost je ograničena i obično se temelji na određenoj konačnoj grupi. Na primjer, kategorička varijabla u R može biti zemlje, godina, spol, zanimanje.
- Međutim, kontinuirana varijabla može poprimiti bilo koju vrijednost, od cijelog broja do decimalnog. Na primjer, možemo imati prihod, cijenu dionice itd.
Kategoričke varijable
Kategorijalne varijable u R pohranjuju se u faktor. Provjerimo kod u nastavku za pretvaranje znakovne varijable u faktorsku varijablu u R. Znakovi nisu podržani u algoritmu strojnog učenja i jedini je način pretvoriti niz u cijeli broj.
Sintaksa
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
argumenti:
- x: Vektor kategoričkih podataka u R. Mora biti niz ili cijeli broj, a ne decimalni.
- Razine: Vektor mogućih vrijednosti koje uzima x. Ovaj argument nije obavezan. Zadana vrijednost je jedinstveni popis stavki vektora x.
- Papir za naljepnice i etikete: Dodajte oznaku x kategoričkim podacima u R. Na primjer, 1 može uzeti oznaku `muško` dok 0 može uzeti oznaku `žensko`.
- naredio: Odredite trebaju li razine biti poredane u kategoričkim podacima u R.
Primjer:
Kreirajmo faktorski okvir podataka.
# 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)
Izlaz:
## [1] "character" ## [1] "factor"
Važno je transformirati a niz u faktorsku varijablu u R kada izvodimo zadatak strojnog učenja.
Kategorička varijabla u R može se podijeliti na nominalna kategorička varijabla i redna kategorička varijabla.
Nominalna kategorička varijabla
Kategorička varijabla ima nekoliko vrijednosti, ali redoslijed nije bitan. Na primjer, muško ili žensko. Kategoričke varijable u R nemaju poredak.
# 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
Izlaz:
## [1] blue red green white black yellow ## Levels: black blue green red white yellow
Iz faktora_boja ne možemo odrediti nikakav redoslijed.
Redna kategorička varijabla
Redne kategoričke varijable imaju prirodan poredak. Možemo odrediti redoslijed, od najnižeg do najvišeg s redoslijedom = TRUE i od najvišeg do najnižeg s redoslijedom = FALSE.
Primjer:
Možemo koristiti sažetak za brojanje vrijednosti za svaku faktorsku varijablu u R.
# 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
Izlaz:
## [1] evening morning afternoon midday midnight evening
Primjer:
## Levels: morning < midday < afternoon < evening < midnight # Append the line to above code # Count the number of occurence of each level summary(factor_day)
Izlaz:
## morning midday afternoon evening midnight ## 1 1 1 2 1
R je odredio razinu od 'jutro' do 'ponoć' kako je navedeno u zagradama razina.
Kontinuirane varijable
Kontinuirane varijable klase zadana su vrijednost u R. Pohranjuju se kao numeričke ili cijele. To možemo vidjeti iz skupa podataka u nastavku. mtcars je ugrađeni skup podataka. Prikuplja podatke o različitim tipovima automobila. Možemo ga uvesti pomoću mtcars i provjeriti klasu varijable mpg, milja po galonu. Vraća brojčanu vrijednost, označavajući kontinuiranu varijablu.
dataset <- mtcars class(dataset$mpg)
Izlaz
## [1] "numeric"