Factor in R: Kategorinen muuttuja ja jatkuvat muuttujat
Mikä on tekijä R:ssä?
tekijä R:ssä on muuttuja, jota käytetään tietojen luokittelemiseen ja tallentamiseen ja jolla on rajoitettu määrä erilaisia arvoja. Se tallentaa tiedot kokonaislukuarvojen vektorina. R:n tekijä tunnetaan myös kategorisena muuttujana, joka tallentaa sekä merkkijono- että kokonaislukuarvot tasoiksi. Tekijää käytetään enimmäkseen tilastollisessa mallintamisessa ja tutkivassa data-analyysissä R:n kanssa.
Tietojoukossa voimme erottaa kahdenlaisia muuttujia: kategorinen ja jatkuva.
- R:n kategoristen muuttujien kuvaavissa tilastoissa arvo on rajoitettu ja perustuu yleensä tiettyyn äärelliseen ryhmään. Esimerkiksi R:n kategorinen muuttuja voi olla maat, vuosi, sukupuoli, ammatti.
- Jatkuva muuttuja voi kuitenkin ottaa mitä tahansa arvoa kokonaisluvusta desimaaliin. Meillä voi olla esimerkiksi tulot, osakkeen hinta jne.
Kategoriset muuttujat
Kategoriset muuttujat sisään R tallennetaan tekijäksi. Tarkastellaan alla olevaa koodia muuttaaksesi merkkimuuttujan tekijämuuttujaksi R:ssä. Koneoppimisalgoritmi ei tue merkkejä, ja ainoa tapa on muuntaa merkkijono kokonaisluvuksi.
Syntaksi
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
argumentit:
- x: Kategorisen datan vektori R:ssä. Sen on oltava merkkijono tai kokonaisluku, ei desimaali.
- Tasot: Mahdollisten arvojen vektori x:llä. Tämä argumentti on valinnainen. Oletusarvo on vektorin x yksilöllinen kohteiden luettelo.
- tarrat: Lisää tunniste R:n x:n kategoriallisiin tietoihin. Esimerkiksi 1 voi ottaa tunnisteen "mies" ja 0 -tunnisteen "nainen".
- tilasi: Määritä, pitäisikö tasot järjestää kategorisissa tiedoissa R:ssä.
Esimerkiksi:
Luodaan tekijätietokehys.
# 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)
lähtö:
## [1] "character" ## [1] "factor"
On tärkeää muuttaa a jono tekijämuuttujaksi R:ssä, kun suoritamme koneoppimistehtävän.
Kategorinen muuttuja R:ssä voidaan jakaa nimellinen kategorinen muuttuja ja järjestysluokan kategorinen muuttuja.
Nimellinen kategorinen muuttuja
Kategorisella muuttujalla on useita arvoja, mutta järjestyksellä ei ole väliä. Esimerkiksi mies tai nainen. Kategorisilla muuttujilla R:ssä ei ole järjestystä.
# 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
lähtö:
## [1] blue red green white black yellow ## Levels: black blue green red white yellow
Factor_color-arvosta emme voi kertoa järjestystä.
Ordinaal Kategorinen muuttuja
Ordinaalisilla kategorisilla muuttujilla on luonnollinen järjestys. Voimme määrittää järjestyksen alimmasta korkeimpaan, kun järjestys = TRUE ja korkeimmasta pienimpään, kun järjestys = EPÄTOSI.
Esimerkiksi:
Voimme käyttää yhteenvetoa laskeaksemme kunkin R:n tekijämuuttujan arvot.
# 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
lähtö:
## [1] evening morning afternoon midday midnight evening
Esimerkiksi:
## Levels: morning < midday < afternoon < evening < midnight # Append the line to above code # Count the number of occurence of each level summary(factor_day)
lähtö:
## morning midday afternoon evening midnight ## 1 1 1 2 1
R järjesti tason 'aamusta' 'keskiyöhön' tasojen suluissa määritellyn mukaisesti.
Jatkuvat muuttujat
Jatkuvat luokkamuuttujat ovat oletusarvoina R:ssä. Ne tallennetaan numeerisina tai kokonaislukuina. Näemme sen alla olevasta tietojoukosta. mtcars on sisäänrakennettu tietojoukko. Se kerää tietoa eri autotyypeistä. Voimme tuoda sen käyttämällä mtcarsia ja tarkistaa muuttujan mpg luokan, mailia gallonaa kohden. Se palauttaa numeerisen arvon, joka ilmaisee jatkuvan muuttujan.
dataset <- mtcars class(dataset$mpg)
ulostulo
## [1] "numeric"
