boxplot() in R: Kuidas teha BoxSüžeed RStudios [näited]

boxplot() keeles R

boxplot() keeles R aitab visualiseerida andmete jaotust kvartiilide kaupa ja tuvastada kõrvalekaldeid. Saate kasutada ggplot2 teegi geomeetrilist objekti geom_boxplot() boxplot() joonistamiseks R-s.

Kasutame õhukvaliteedi andmekomplekti boxplot() juurutamiseks R-s koos ggplotiga. See andmestik mõõdab New Yorgi õhukvaliteeti maist septembrini 1973. Andmestik sisaldab 154 vaatlust. Kasutame järgmisi muutujaid:

  • Osoon: numbriline muutuja
  • Tuul: Arvmuutuja
  • Kuu: maist septembrini. Numbriline muutuja

Looma Box Süžee

Enne kui hakkate R-s oma esimest boxplot() looma, peate andmetega manipuleerima järgmiselt:

  • 1. toiming: importige andmed
  • 2. samm: eemaldage mittevajalikud muutujad
  • 3. samm: teisendage kuu teguri tasemele
  • 4. samm: looge uus kategooriline muutuja, mis jagab kuu kolme tasemega: algus, keskpaik ja lõpp.
  • 5. samm: eemaldage puuduvad tähelepanekud

Kõik need sammud tehakse dplyr ja torujuhtme operaatoriga %>%.

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"))))

Hea tava on kontrollida andmete struktuuri funktsiooniga glimpse().

glimpse(data_air)

Väljund:

## 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...

Andmekogus on NA-d. Nende eemaldamine on mõistlik.

# Step 5
data_air_nona <-data_air %>% na.omit()	

Põhiline kasti süžee

Joonistame põhilise R boxplot() koos osooni jaotusega kuude kaupa.

# Store the graph
box_plot <- ggplot(data_air_nona, aes(x = Month, y = Ozone))
# Add the geometric object box plot
box_plot +
    geom_boxplot()

Koodi selgitus

  • Salvestage graafik edasiseks kasutamiseks
    • box_plot: salvestate graafiku muutujasse box_plot See on kasulik edasisel kasutamisel või vältida liiga keerulisi koodiridu
  • Lisage R boxplot() geomeetriline objekt
    • Edastate andmestiku data_air_nona ggplot boxplotile.
    • Argumendi aes() sisse lisate x-telje ja y-telje.
    • + märk tähendab, et soovite, et R jätkaks koodi lugemist. See muudab koodi loetavamaks, purustades selle.
    • Kasutage kasti joonise loomiseks funktsiooni geom_boxplot().

Väljund:

Põhi- Box Süžee

Muuda graafiku külge

Saate graafiku külje ümber pöörata.

box_plot +
  geom_boxplot()+
  coord_flip()

Koodi selgitus

  • box_plot: kasutate salvestatud graafikut. See väldib kõigi koodide ümberkirjutamist iga kord, kui lisate graafikule uut teavet.
  • geom_boxplot(): Loo boxplots() R-is
  • coord_flip(): Pöörake graafiku külge

Väljund:

Muuda graafiku külge

Muutke kõrvalekalde värvi

Saate muuta kõrvalekallete värvi, kuju ja suurust.

box_plot +
    geom_boxplot(outlier.colour = "red",
        outlier.shape = 2,
        outlier.size = 3) +
    theme_classic()

Koodi selgitus

  • outlier.colour=”red”: kontrollige kõrvalekallete värvi
  • outlier.shape=2: muutke kõrvalekalde kuju. 2 viitab kolmnurgale
  • outlier.size=3: muutke kolmnurga suurust. Suurus on võrdeline arvuga.

Väljund:

Muuda välise värvi värvi

Lisage kokkuvõtlik statistika

R boxplot() saate lisada kokkuvõtliku statistika.

box_plot +
    geom_boxplot() +
    stat_summary(fun.y = mean,
        geom = "point",
        size = 3,
        color = "steelblue") +
    theme_classic()

Koodi selgitus

  • stat_summary() võimaldab horisontaalsele kastigraafikule R kokkuvõtte lisada
  • Argument fun.y juhib tagastatavat statistikat. Sa kasutad alatust
  • Märkus. Saadaval on ka muu statistika, näiteks min ja max. Samal graafikul saab kuvada rohkem kui ühte statistikat
  • geom = “punkt”: joonistage keskmine punktiga
  • suurus=3: punkti suurus
  • värv =”terassinine”: punktide värv

Väljund:

Lisage kokkuvõtlik statistika

Box Krunt täppidega

Järgmisel horisontaalsel kastgraafikul R lisate punktgraafiku kihid. Iga punkt tähistab vaatlust.

box_plot +
    geom_boxplot() +
    geom_dotplot(binaxis = 'y',
        dotsize = 1,
        stackdir = 'center') +
    theme_classic()

Koodi selgitus

  • geom_dotplot() võimaldab lisada prügikasti laiusele punkti
  • binaxis='y': muutke punktide asukohta piki y-telge. Vaikimisi x-telg
  • dotsize=1: punktide suurus
  • stackdir='center': Punktide virnastamise viis: neli väärtust:
    • "üles" (vaikimisi),
    • "alla"
    • "Keskus"
    • "keskpunkt"

Väljund:

Box Krunt täppidega

Kontrolli esteetikat Box Süžee

Muutke kasti värvi

Saate muuta rühma värve.

ggplot(data_air_nona, aes(x = Month, y = Ozone, color = Month)) +
    geom_boxplot() +
    theme_classic()

Koodi selgitus

  • Rühmade värve juhitakse aes() kaardistuses. Kasti ja vurride graafiku värvi muutmiseks vastavalt kuudele saate kasutada värvi=kuu

Väljund:

Muuda värvi Box

Box süžee mitme rühmaga

Samuti on võimalik lisada mitu rühma. Saate visualiseerida õhukvaliteedi erinevust vastavalt mõõtmispäevale.

ggplot(data_air_nona, aes(Month, Ozone)) +
    geom_boxplot(aes(fill = day_cat)) +
    theme_classic()

Koodi selgitus

  • Geomeetrilise objekti kaardistus aes() juhib kuvatavaid rühmi (see muutuja peab olema tegur)
  • aes(fill= day_cat) võimaldab luua x-teljel iga kuu kohta kolm kasti

Väljund:

Box Mitme rühmaga krunt

Box Süžee värisevate täppidega

Teine viis punkti kuvamiseks on värinad. See on mugav viis punktide visualiseerimiseks boxploti abil muutuja R kategooriliste andmete jaoks.

See meetod väldib diskreetsete andmete kattumist.

box_plot +
    geom_boxplot() +
    geom_jitter(shape = 15,
        color = "steelblue",
        position = position_jitter(width = 0.21)) +
    theme_classic()

Koodi selgitus

  • geom_jitter() lisab igale punktile väikese lagunemise.
  • shape=15 muudab punktide kuju. 15 tähistab ruute
  • värv = "terassinine": punkti värvi muutmine
  • asukoht=positsioon_värin (laius = 0.21): kattuvate punktide paigutamise viis. position_jitter(width = 0.21) tähendab, et liigutate punkte x-teljelt 20 protsenti. Vaikimisi 40 protsenti.

Väljund:

Box Süžee värisevate täppidega

Näete erinevust esimese graafiku vahel värinameetodil ja teise punktimeetodil.

box_plot +
    geom_boxplot() +
    geom_point(shape = 5,
        color = "steelblue") +
    theme_classic()

Box Süžee värisevate täppidega

Torgatud Box Süžee

Funktsiooni geom_boxplot() huvitav omadus on sälguga kasti funktsioon R-is. Sälgugraafik kitsendab kasti mediaani ümber. Sälguga kasti graafiku põhieesmärk on võrrelda mediaani olulisust rühmade vahel. On kindlaid tõendeid selle kohta, et kahel rühmal on erinev mediaan, kui sälgud ei kattu. Sälk arvutatakse järgmiselt:

Torgatud Box Süžee

koos on interkvartiil ja vaatluste arv.

box_plot +
    geom_boxplot(notch = TRUE) +
    theme_classic()

Koodi selgitus

  • geom_boxplot(notch=TRUE): loo sälguga horisontaalne kastplot R

Väljund:

Torgatud Box Süžee

kokkuvõte

Allolevas tabelis saame kokku võtta horisontaalse kastploki R erinevad tüübid:

Eesmärk kood
Põhiline kasti süžee
ggplot(df, aes( x = x1, y =y)) + geom_boxplot()
keera külg
ggplot(df, aes( x = x1, y =y)) + geom_boxplot() + coord_flip()
Sälguline kast krunt
ggplot(df, aes( x = x1, y =y)) + geom_boxplot(notch=TRUE)
Box värelevate täppidega süžee
ggplot(df, aes( x = x1, y =y)) + geom_boxplot() + geom_jitter(position = position_jitter(0.21))

Kontrollige ka: - R-i õpetus algajatele: õppige R-i programmeerimiskeelt

Võta see postitus kokku järgmiselt: