Faktor i R: Kategoriske variable og kontinuerlige variabler

Hva er faktor i R?

Faktor i R er en variabel som brukes til รฅ kategorisere og lagre dataene, med et begrenset antall forskjellige verdier. Den lagrer dataene som en vektor av heltallsverdier. Faktor i R er ogsรฅ kjent som en kategorisk variabel som lagrer bรฅde streng- og heltallsdataverdier som nivรฅer. Faktor brukes mest i statistisk modellering og utforskende dataanalyse med R.

I et datasett kan vi skille mellom to typer variabler: kategorisk og kontinuerlig.

  • I beskrivende statistikk for kategoriske variabler i R er verdien begrenset og vanligvis basert pรฅ en bestemt begrenset gruppe. For eksempel kan en kategorisk variabel i R vรฆre land, รฅr, kjรธnn, yrke.
  • En kontinuerlig variabel kan imidlertid ta alle verdier, fra heltall til desimal. For eksempel kan vi ha inntektene, prisen pรฅ en aksje osv.

Kategoriske variabler

Kategoriske variabler i R er lagret i en faktor. La oss sjekke koden nedenfor for รฅ konvertere en tegnvariabel til en faktorvariabel i R. Tegn stรธttes ikke i maskinlรฆringsalgoritmer, og den eneste mรฅten er รฅ konvertere en streng til et heltall.

syntax

factor(x = character(), levels, labels = levels, ordered = is.ordered(x))

argumenter:

  • x: En vektor av kategoriske data i R. Mรฅ vรฆre en streng eller heltall, ikke desimal.
  • Nivรฅer: En vektor med mulige verdier tatt av x. Dette argumentet er valgfritt. Standardverdien er den unike listen over elementer i vektoren x.
  • etiketter: Legg til en etikett til x-kategoridataene i R. For eksempel kan 1 ta etiketten ยซmannยป mens 0, etiketten ยซfemaleยป.
  • bestilt: Bestem om nivรฅene skal sorteres i kategoriske data i R.

Eksempel:

La oss lage en faktordataramme.

# 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)

Utgang:

## [1] "character"
## [1] "factor"

Det er viktig รฅ transformere en string inn i faktorvariabel i R nรฅr vi utfรธrer maskinlรฆringsoppgave.

En kategorisk variabel i R kan deles inn i nominell kategorisk variabel og ordinal kategorisk variabel.

Nominell kategorisk variabel

En kategorisk variabel har flere verdier, men rekkefรธlgen spiller ingen rolle. For eksempel mann eller kvinne. Kategoriske variabler i R har ikke rekkefรธlge.

# 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

Utgang:

## [1] blue   red    green  white  black  yellow
## Levels: black blue green red white yellow

Fra factor_color kan vi ikke se noen rekkefรธlge.

Ordinal kategorisk variabel

Ordinale kategoriske variabler har en naturlig rekkefรธlge. Vi kan spesifisere rekkefรธlgen, fra den laveste til den hรธyeste med rekkefรธlge = TRUE og hรธyest til lavest med rekkefรธlge = FALSE.

Eksempel:

Vi kan bruke sammendrag for รฅ telle verdiene for hver faktorvariabel i 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

Utgang:

## [1] evening   morning   afternoon midday    
midnight  evening

Eksempel:

## Levels: morning < midday < afternoon < evening < midnight
# Append the line to above code
# Count the number of occurence of each level
summary(factor_day)

Utgang:

##   morning    midday afternoon   evening  midnight
##         1         1         1         2         1

R bestilte nivรฅet fra 'morgen' til 'midnatt' som spesifisert i nivรฅparentesen.

Kontinuerlige variabler

Kontinuerlige klassevariabler er standardverdien i R. De lagres som numeriske eller heltall. Vi kan se det fra datasettet nedenfor. mtcars er et innebygd datasett. Den samler informasjon om forskjellige biltyper. Vi kan importere den ved รฅ bruke mtcars og sjekke klassen til variabelen mpg, mile per gallon. Den returnerer en numerisk verdi, som indikerer en kontinuerlig variabel.

dataset <- mtcars
class(dataset$mpg)

Produksjon

## [1] "numeric"

Oppsummer dette innlegget med: