Johdatus R: n tekijöihin
R: ssä pystymme käsittelemään erityyppisiä muuttujia. Voimme myös olettaa tekijän muuttujan tyyppinä, jolla on vain rajoitettu määrä osoitettua arvoa; sellaiselle muuttujalle viitataan myös kategorisena muuttujana.
Faktorin edut
- Se voi tallentaa sekä kokonaislukuja että merkkijonoja
1. Kokonaislukujen tapauksessa
data = c(5, 6, 6, 6, 7, 5, 7, 6, 7, 5, 6, 7)
factor_data = factor(data)
factor_data
ulostulo
2. Jousien tapauksessa
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"))
y
ulostulo
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y
ulostulo
- Erittäin hyödyllinen, kun sarakkeissa on rajoitettu määrä yksilöllisiä arvoja
Nimi | Matkustapa |
Johannes | kuorma-auto |
Shaw | Auto |
suojanpuoli | sykli |
musan | Pyörä |
Lozy | kuorma-auto |
Riya | Auto |
mij | sykli |
Tässä sarakkeessa 2 on rajoitettu määrä yksilöllisiä arvoja.
- Se auttaa korjaamaan merkkijonot kirjoitusvirheillä.
Kuinka luoda tekijä R: ssä?
Voimme luoda tekijöitä käyttämällä koodikertoimia ().
Tutustu lisätietoihin tekijästä ().
factor(x = character(), levels, labels = levels, ordered = is.ordered(x))
Missä,
X on joukko kategorista tietoa. Kuten jo keskustelimme, sen pitäisi olla merkkijono tai kokonaislukuja.
Tasot ovat arvojoukkoja, jotka X voi ottaa. Tasot sisältävät kaikki sarakkeessa (x) käytettävissä olevat yksilölliset arvot.
Etiketit nimenä viittaavat X: ssä saatavilla olevien tietojen merkitsemiseen.
Tilattu määrää, onko tasot tilattava tietyssä järjestyksessä.
Esimerkki 1
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike"))
y
lähtö:
Esimerkki 2
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y
lähtö:
Esimerkissä 2 voidaan nähdä, että voimme määritellä myös tasot.
Katsotaan nyt lisää tekijöistä käyttämällä Str (y).
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y
lähtö:
str(y)
lähtö:
On selvästi nähtävissä, että tekijät tallennetaan kokonaislukuvektoreina ja tasot tallennetaan merkkivektorina ja yksittäiset elementit tallennetaan tosiasiallisesti indekseinä.
- Nyt näemme kuinka päästä tekijän komponentteihin
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y
lähtö:
y(2) # helps to access 2nd element
lähtö:
x(c(3, 4)) # helps to access 3rd and 4th element
ulostulo
x(-1) # access all except 1st element
lähtö:
- Nyt näemme kuinka kertointa voidaan muuttaa.
y = factor(c("Bike", "Car", "Cycle", "Truck", "Car", "Bike", "Cycle", "Truck", "Car", "Bike"), levels = c("Car", "Bike", "Cycle", "Truck", "Train"))
y
lähtö:
y(3) = "Truck" #modifty third element
y
ulostulo
Kertoimen lisääminen:
y(10) = "Car"
y
lähtö:
Huomaa, että emme voi antaa mitään tekijälle, joka ei kuulu tasoihin.
y(4) = "Plane"Warning message:In `(<-.factor`(`*tmp*`, 4, value = "Plane") : invalid factor level, NA generated
lähtö:
Tässä esimerkissä voimme nähdä, että ”Taso” ei ole osa tasoa, joten saamme varoitusviestin, jonka mukaan ”Taso” on virheellinen tekijätaso.
Muunna tiedot tekijäksi
Tietoja on saatavana runsaasti, ja on vaikeaa aina kirjoittaa koko sana koodiin, joten tätä varten muunnetaan tiedot ensin kerroimeksi ja muunnetaan sitten tekijä merkiksi tai numeroksi mukavuutemme mukaan.
Työskentelemme nyt oikeiden tietojen kanssa. Jos meillä on 50 havaintoa, hakijat antavat työsuunnan. Kuten John matkaa kohti pohjoista työtehtävissään tai Sam matkaa kohti etelää työtehtäviään varten.
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
lähtö:
Tasot: itäinen pohjoinen lounas
Nyt jos haluamme muuntaa tekijän merkkivektoriksi:
Käytämme as.character () -koodia.
as.character(direction.factor)
lähtö:
Tai haluamme muuttaa tekijän numeerisiksi vektoreiksi:
Käytämme koodia.numeric ().
as.numeric(direction.factor)
lähtö:
Suositellut artikkelit
Tämä on opas tekijöille R: ssä. Tässä keskustellaan johdannosta, tekijän eduista, kuinka luodaan kerroin R: ään yhdessä tulosteiden kanssa. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -
- Spark SQL Dataframe
- R-tietotyypit
- Moniulotteinen tietokanta
- AWS Data Pipeline