Introduksjon til faktorer i R

I R kan vi behandle forskjellige typer variabler. Vi kan også anta faktor som en type variabel som bare tar et begrenset antall tilordnet verdi; slik variabel også referert til som en kategorisk variabel.

Fordeler med en faktor

  • Den kan lagre både heltall og strenger

1. Når det gjelder heltal

data = c(5, 6, 6, 6, 7, 5, 7, 6, 7, 5, 6, 7)
factor_data = factor(data)
factor_data

Produksjon

2. Når det gjelder strenger

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"))
y

Produksjon

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Produksjon

  • Veldig nyttig når kolonnene har et begrenset antall unike verdier
NavnReisemåte
JohnLastebil
ShawBil
LeeSyklus
MusanBike
LozyLastebil
RiyaBil
mijSyklus

Her har vi et begrenset antall unike verdier i kolonne 2.

  • Det hjelper med å rette opp strengene med skrivefeil (skrivefeil).

Hvordan lage en faktor i R?

Vi kan lage faktorer ved å bruke kodefaktorer ().

Utforsk mer om faktor ().

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

Hvor,

X er et sett med kategoriske data. Som vi allerede har diskutert, skal det være en streng eller heltall.

Nivåer er sett med verdi som kan tas av X. Nivåer inneholder all den unike verdien som er tilgjengelig i kolonnen (x).

Etiketter som navnet antyder merking av dataene som er tilgjengelige på X.

Bestilt bestemmer om nivåene skal bestilles i en bestemt rekkefølge.

Eksempel 1

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike"))
y

Produksjon:

Eksempel 2

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Produksjon:

I eksempel 2 kan vi se at vi også kan definere “Nivåer”.

La oss nå se mer om faktorer ved å bruke Str (y).

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Produksjon:

str(y)

Produksjon:

Man ser tydelig at faktorer lagres som heltalvektorer og nivåer lagres som en karaktervektor, og de individuelle elementene faktisk lagres som indekser.

  • Nå skal vi se hvordan du får tilgang til komponenter av en faktor

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Produksjon:

y(2) # helps to access 2nd element

Produksjon:

x(c(3, 4)) # helps to access 3rd and 4th element

Produksjon

x(-1) # access all except 1st element

Produksjon:

  • Nå skal vi se hvordan du endrer en faktor.

y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y

Produksjon:

y(3) = "Truck" #modifty third element
y

Produksjon

Legger til en faktor:

y(10) = "Car"
y

Produksjon:

Vær oppmerksom på at vi ikke kan tildele noe i en faktor som ikke er en del av nivåene.

y(4) = "Plane"Warning message:In `(<-.factor`(`*tmp*`, 4, value = "Plane") : invalid factor level, NA generated

Produksjon:

I dette eksemplet kan vi se at “Plane” ikke er en del av nivået vårt, og derfor fikk vi en advarsel som sier “Plane” er et ugyldig faktornivå.

Konverter data til en faktor

Data er tilgjengelige i massevis, og det er tøft hver gang å skrive ned et fullstendig ord i koden, så for dette vil vi konvertere dataene til en faktor først, deretter konvertere faktoren til en karakter eller nummer i henhold til vår bekvemmelighet.

La oss nå jobbe med noen virkelige data. Der vi har 50 observasjoner og søkere gir deres arbeidsretning. Som at John reiser mot nord for sine arbeidsoppgaver eller Sam reiser mot sør retning for sine arbeidsoppgaver.

direction <- c("West", "East", "North", "West", "South", "East", "South", "East", "South", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West", "South", "West", "East", "South", "West", "South", "East", "South", "East", "South", "South", "West")
direction.factor = factor(direction)
direction.factor

Produksjon:

Nivåer: Øst-Nord-Sørvest

Hvis vi nå vil konvertere faktoren til en tegnvektor:

Vi bruker as.character () -kode.

as.character(direction.factor)

Produksjon:

Eller vi ønsker å konvertere faktoren til en numerisk vektor:

Vi bruker as.numeric () kode.

as.numeric(direction.factor)

Produksjon:

Anbefalte artikler

Dette er en guide til faktorer i R. Her diskuterer vi introduksjonen, Fordeler med en faktor, Hvordan lage en faktor i R sammen med utgangene. Du kan også gå gjennom de andre foreslåtte artiklene våre for å lære mer–

  1. Spark SQL Dataframe
  2. R Datatyper
  3. Flerdimensjonal database
  4. AWS Data Pipeline

Kategori: