Mi az R tényező?
Az R faktor egy olyan változó, amelyet az adatok kategorizálására és tárolására használnak, korlátozott számú különböző értékkel rendelkezik. Az adatokat egész értékek vektoraként tárolja. Az R tényezőt kategorikus változónak is nevezik, amely mind a karakterláncot, mind az egész értéket szintként tárolja. A faktort leginkább statisztikai modellezésben és R-vel végzett feltáró adatelemzésben használják.
Egy adatkészletben a változók két típusát különböztethetjük meg: a kategorikusakat és a folytonosakat .
- Az R kategorikus változók leíró statisztikájában az érték korlátozott, és általában egy adott véges csoporton alapszik. Például az R kategorikus változója lehet ország, év, nem, foglalkozás.
- A folyamatos változó azonban bármilyen értéket vehet fel, egész számtól a tizedesig. Például megvan a bevétel, a részvény ára stb.
Kategorikus változók
Az R kategóriában szereplő kategorikus változókat egy tényező tárolja. Ellenőrizzük az alábbi kódot, hogy egy karakterváltozót tényező változóvá alakítsunk-e az R-ben. A gépi tanulási algoritmusban a karakterek nem támogatottak, és az egyetlen módja az, hogy egy karakterláncot egész számra konvertálunk.
Szintaxis
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
Érvek:
- x : A kategorikus adatok vektora az R-ben. Karaktersorozatnak vagy egésznek kell lennie, nem decimálisnak.
- Szintek : Az x által vett lehetséges értékek vektora. Ez az érvelés nem kötelező. Az alapértelmezett érték az x vektor egyedi elemek listája.
- Címkék : Adjon hozzá egy címkét az x kategorikus adathoz az R-ben. Például 1 felveheti a „male”, míg a 0, a „female” címkét.
- rendezve : Határozza meg, hogy a szinteket R kategóriás adatokban kell-e rendezni?
Példa:
Hozzunk létre egy faktor adatkeretet.
# Create gender vectorgender_vector <- c("Male", "Female", "Female", "Male", "Male")class(gender_vector)# Convert gender_vector to a factorfactor_gender_vector <-factor(gender_vector)class(factor_gender_vector)
Kimenet:
## [1] "character"## [1] "factor"
A Gépi tanulás feladat végrehajtásakor fontos, hogy egy karakterláncot tényező változóvá alakítsunk R-ben.
Az R kategóriában szereplő kategorikus változó névleges kategorikus változóra és rendes kategorikus változóra osztható .
Névleges kategorikus változó
Egy kategorikus változónak több értéke van, de a sorrend nem számít. Például férfi vagy nő. Az R kategóriás változók nem rendelkeznek sorrenddel.
# Create a color vectorcolor_vector <- c('blue', 'red', 'green', 'white', 'black', 'yellow')# Convert the vector to factorfactor_color <- factor(color_vector)factor_color
Kimenet:
## [1] blue red green white black yellow## Levels: black blue green red white yellow
A factor_color alapján egyetlen sorrendet sem tudunk megmondani.
Rendes kategorikus változó
A kategorikus kategorikus változók természetes sorrendben vannak. Megadhatjuk a sorrendet, a legalacsonyabbtól a legmagasabbig a = IGAZ és a legmagasabbtól a legalacsonyabbig a = HAMIS.
Példa:
Összegzéssel számolhatjuk az egyes tényezők változóinak értékeit R-ben.
# Create Ordinal categorical vectorday_vector <- c('evening', 'morning', 'afternoon', 'midday', 'midnight', 'evening')# Convert `day_vector` to a factor with ordered levelfactor_day <- factor(day_vector, order = TRUE, levels =c('morning', 'midday', 'afternoon', 'evening', 'midnight'))# Print the new variablefactor_day
Kimenet:
## [1] evening morning afternoon middaymidnight evening
Példa:
## Levels: morning < midday < afternoon < evening < midnight# Append the line to above code# Count the number of occurence of each levelsummary(factor_day)
Kimenet:
## morning midday afternoon evening midnight## 1 1 1 2 1
R a szintet „reggeltől” éjfélig rendezte, a szintek zárójelében megadottak szerint.
Folyamatos változók
A folytonos osztályváltozók az R alapértelmezett értéke. Számként vagy egészként tárolódnak. Az alábbi adatkészletből láthatjuk. Az mtcars egy beépített adatkészlet. Információt gyűjt a különféle típusú autókról. Importálhatjuk mtcars használatával, és ellenőrizhetjük az mpg változó osztályát, mérföld per gallon. Visszaad egy numerikus értéket, amely folyamatos változót jelöl.
dataset <- mtcarsclass(dataset$mpg)
Kimenet
## [1] "numeric"