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"