boxplot() in R: How to Make BoxTontit RStudiossa [esimerkkejä]
boxplot() kirjassa R
boxplot() kirjassa R auttaa visualisoimaan datan jakautumisen kvartiileittain ja havaitsemaan poikkeamien esiintymisen. Voit käyttää geometristä objektia geom_boxplot() ggplot2-kirjastosta boxplot():n piirtämiseen R:ssä.
Käytämme ilmanlaatutietojoukkoa boxplot():n käyttöönottamiseksi R:ssä ggplotin kanssa. Tämä aineisto mittaa New Yorkin ilmanlaatua toukokuusta syyskuuhun 1973. Aineisto sisältää 154 havaintoa. Käytämme seuraavia muuttujia:
- Otsoni: Numeerinen muuttuja
- Tuuli: Numeerinen muuttuja
- Kuukausi: toukokuusta syyskuuhun. Numeerinen muuttuja
luoda Box juoni
Ennen kuin aloitat ensimmäisen boxplot():n luomisen R:ssä, sinun on käsiteltävä tietoja seuraavasti:
- Vaihe 1: Tuo tiedot
- Vaihe 2: Pudota tarpeettomat muuttujat
- Vaihe 3: Muunna kuukausi tekijätasolla
- Vaihe 4: Luo uusi kategorinen muuttuja, joka jakaa kuukauden kolmella tasolla: alku, keskikohta ja loppu.
- Vaihe 5: Poista puuttuvat havainnot
Kaikki nämä vaiheet tehdään dplyr:llä ja putkioperaattorilla %>%.
library(dplyr) library(ggplot2) # Step 1 data_air <- airquality % > % #Step 2 select(-c(Solar.R, Temp)) % > % #Step 3 mutate(Month = factor(Month, order = TRUE, labels = c("May", "June", "July", "August", "September")), #Step 4 day_cat = factor(ifelse(Day < 10, "Begin", ifelse(Day < 20, "Middle", "End"))))
Hyvä käytäntö on tarkistaa datan rakenne funktiolla glimpse().
glimpse(data_air)
lähtö:
## Observations: 153 ## Variables: 5 ## $ Ozone <int> 41, 36, 12, 18, NA, 28, 23, 19, 8, NA, 7, 16, 11, 14, ... ## $ Wind <dbl> 7.4, 8.0, 12.6, 11.5, 14.3, 14.9, 8.6, 13.8, 20.1, 8.6... ## $ Month <ord> May, May, May, May, May, May, May, May, May, May, May,... ## $ Day <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,... ## $ day_cat <fctr> Begin, Begin, Begin, Begin, Begin, Begin, Begin, Begi...
Tietojoukossa on NA:ita. Niiden poistaminen on viisasta.
# Step 5 data_air_nona <-data_air %>% na.omit()
Peruslaatikon juoni
Piirretään perus-R boxplot() otsonin kuukausijakauman kanssa.
# Store the graph box_plot <- ggplot(data_air_nona, aes(x = Month, y = Ozone)) # Add the geometric object box plot box_plot + geom_boxplot()
Koodin selitys
- Säilytä kaavio myöhempää käyttöä varten
- box_plot: Tallennat kaavion muuttujaan box_plot Se on hyödyllinen jatkokäytössä tai välttää liian monimutkaisia koodiriviä
- Lisää geometrinen objekti R boxplot()
- Välität datajoukon data_air_nona ggplot boxplotille.
- Aes()-argumentin sisään lisäät x-akselin ja y-akselin.
- +-merkki tarkoittaa, että haluat R:n jatkavan koodin lukemista. Se tekee koodista luettavamman rikkomalla sen.
- Käytä geom_boxplot() luodaksesi laatikkokaavion
lähtö:
Vaihda kaavion puolta
Voit kääntää kaavion sivun.
box_plot + geom_boxplot()+ coord_flip()
Koodin selitys
- box_plot: Käytät tallentamaasi kuvaajaa. Se välttää kaikkien koodien kirjoittamisen uudelleen joka kerta, kun lisäät kaavioon uutta tietoa.
- geom_boxplot(): Luo boxplots() R:ssä
- coord_flip(): Käännä kaavion sivu
lähtö:
Muuta poikkeavan värin väriä
Voit muuttaa poikkeamien väriä, muotoa ja kokoa.
box_plot + geom_boxplot(outlier.colour = "red", outlier.shape = 2, outlier.size = 3) + theme_classic()
Koodin selitys
- outlier.colour=”punainen”: Hallitse poikkeavien arvojen väriä
- outlier.shape=2: Muuta poikkeaman muotoa. 2 viittaa kolmioon
- outlier.size=3: Muuta kolmion kokoa. Koko on verrannollinen numeroon.
lähtö:
Lisää yhteenvetotilasto
Voit lisätä yhteenvetotilaston R boxplot() -funktioon.
box_plot + geom_boxplot() + stat_summary(fun.y = mean, geom = "point", size = 3, color = "steelblue") + theme_classic()
Koodin selitys
- stat_summary() mahdollistaa yhteenvedon lisäämisen vaakasuuntaiseen laatikkokuvaajaan R
- Argumentti fun.y ohjaa palautettuja tilastoja. Käytät ilkeää
- Huomautus: Muita tilastoja on saatavilla, kuten min ja max. Useampi kuin yksi tilasto voidaan näyttää samassa kaaviossa
- geom = "piste": Piirrä keskiarvo pisteellä
- koko=3: Pisteen koko
- väri =”teräksensininen”: Pisteiden väri
lähtö:
Box Tontti pisteillä
Seuraavaan vaakasuoraan laatikkokuvaajaan R lisäät pistekuvaajatasot. Jokainen piste edustaa havaintoa.
box_plot + geom_boxplot() + geom_dotplot(binaxis = 'y', dotsize = 1, stackdir = 'center') + theme_classic()
Koodin selitys
- geom_dotplot() mahdollistaa pisteen lisäämisen laatikon leveyteen
- binaxis='y': Muuta pisteiden sijaintia y-akselilla. Oletuksena x-akseli
- dotsize=1: Pisteiden koko
- stackdir='center': Tapa pinota pisteet: Neljä arvoa:
- "ylös" (oletus),
- "alas"
- "keskusta"
- "keskikoko"
lähtö:
Ohjaus Esteettinen Box juoni
Vaihda laatikon väriä
Voit vaihtaa ryhmän värejä.
ggplot(data_air_nona, aes(x = Month, y = Ozone, color = Month)) + geom_boxplot() + theme_classic()
Koodin selitys
- Ryhmien värejä ohjataan aes()-kartoituksessa. Voit muuttaa laatikon ja viiksikuvaajan väriä kuukausien mukaan käyttämällä väri=kuukausi
lähtö:
Box juoni useiden ryhmien kanssa
On myös mahdollista lisätä useita ryhmiä. Voit visualisoida ilmanlaadun eron mittauspäivän mukaan.
ggplot(data_air_nona, aes(Month, Ozone)) + geom_boxplot(aes(fill = day_cat)) + theme_classic()
Koodin selitys
- Geometrisen objektin aes()-kartoitus ohjaa näytettävät ryhmät (tämän muuttujan on oltava tekijä)
- aes(fill= day_cat) mahdollistaa kolmen laatikon luomisen jokaiselle kuukaudelle x-akselille
lähtö:
Box Juoni tärisevine pisteineen
Toinen tapa näyttää piste on värinäpisteet. Se on kätevä tapa visualisoida pisteitä boxplotilla kategorisille tiedoille R-muuttujassa.
Tällä menetelmällä vältetään erillisten tietojen päällekkäisyys.
box_plot + geom_boxplot() + geom_jitter(shape = 15, color = "steelblue", position = position_jitter(width = 0.21)) + theme_classic()
Koodin selitys
- geom_jitter() lisää pienen vaimenemisen jokaiseen pisteeseen.
- shape=15 muuttaa pisteiden muotoa. 15 edustaa neliöitä
- väri = "teräksensininen": Muuta pisteen väriä
- position=position_jitter(width = 0.21): Tapa sijoittaa päällekkäiset pisteet. position_jitter(width = 0.21) tarkoittaa, että siirrät pisteitä 20 prosenttia x-akselista. Oletuksena 40 prosenttia.
lähtö:
Näet eron ensimmäisen kaavion välillä jitter-menetelmällä ja toisen pistemenetelmällä.
box_plot + geom_boxplot() + geom_point(shape = 5, color = "steelblue") + theme_classic()
lovinen Box juoni
Geom_boxplot():n mielenkiintoinen ominaisuus on lovettu boxplot-funktio R:ssä. Lovikaavio kaventaa ruutua mediaanin ympärillä. Lovilaatikkokaavion päätarkoituksena on verrata mediaanin merkitystä ryhmien välillä. On vahvaa näyttöä siitä, että kahdella ryhmällä on eri mediaanit, kun lovet eivät mene päällekkäin. Lovi lasketaan seuraavasti:
kanssa on interkvartiili ja havaintojen lukumäärä.
box_plot + geom_boxplot(notch = TRUE) + theme_classic()
Koodin selitys
- geom_boxplot(notch=TRUE): Luo lovettu vaakasuora boxplot R
lähtö:
Yhteenveto
Voimme tehdä yhteenvedon erityyppisistä vaakasuuntaisista boxplotista R alla olevasta taulukosta:
Tavoite | Koodi |
---|---|
Peruslaatikon juoni |
ggplot(df, aes( x = x1, y =y)) + geom_boxplot() |
käännä sivu |
ggplot(df, aes( x = x1, y =y)) + geom_boxplot() + coord_flip() |
Lovitettu laatikko juoni |
ggplot(df, aes( x = x1, y =y)) + geom_boxplot(notch=TRUE) |
Box juoni tärisevin pistein |
ggplot(df, aes( x = x1, y =y)) + geom_boxplot() + geom_jitter(position = position_jitter(0.21)) |
Tarkista myös: - R-opastus aloittelijoille: Opi R-ohjelmointikieli