Innehållsförteckning:
- Du har redan sett hur du använder stat_bin () för att sammanfatta dina data i rutor, eftersom det här är standardstat för geom_bar (). Det innebär att följande två kodkod ger samma diagram: >> ggplot (quakes, aes (x = djup)) + geom_bar (binwidth = 50)> ggplot (quakes, aes (x = djup)) + stat_bin (binwid th = 50)
- Det intressanta med stat_smooth () är att det använder sig av lokal regression som standard. R har flera funktioner som kan göra detta, men ggplot2 använder funktionen Loess () för lokal regression. Detta innebär att om du vill skapa en linjär regressionsmodell måste du berätta stat_smooth () för att använda en annan mjukare funktion.Du gör detta med metodargumentet.
Video: Data Analysis in R by Dustin Tran 2024
Efter data, kartläggning och geom beskriver det fjärde elementet i ett ggplot2-lager i R hur data ska sammanfattas. I ggplot2 hänvisar du till den här statistiska sammanfattningen som en stat.
En mycket bekväm egenskap hos ggplot2 är dess utbud av funktioner för att sammanfatta dina data i diagrammet. Det innebär att du ofta inte behöver sammanfatta dina data. Exempelvis anger höjden på staplarna i ett histogram hur många observationer av något du har i dina data. Den statistiska sammanfattningen för detta är att räkna observationerna. Statistiker hänvisar till denna process som binning, och standardstat för geom_bar () är stat_bin ().
Analogt med hur varje geom har en associerad standardstat har varje stat också en standard geom.
Så, det här frågar: Hur bestämmer du om du ska använda en geom eller en stat? I teorin spelar ingen roll om du väljer geom eller stat först. I praktiken är det emellertid ofta intuitivt att börja med en typ av plot först - med andra ord ange en geom. Om du sedan vill lägga till ett annat lager av statistisk sammanfattning, använd en stat.
I denna plot användes samma data för att först skapa en scatterplot med geom_point () och sedan lade du till en jämn linje med stat_smooth
Här följer några praktiska exempel på att använda statsfunktioner.
Stat | Beskrivning | Standard Geom |
---|---|---|
stat_bin () | Räknar antalet observationer i rutor. | geom_bar () |
stat_smooth () | Skapar en jämn linje. | geom_line () |
stat_sum () | Lägger till värden. | geom_point () |
stat_identity () | Ingen sammanfattning. | geom_point () |
stat_boxplot () | Sammanfattar data för en box-and-whisker plot. | geom_boxplot () |
Du har redan sett hur du använder stat_bin () för att sammanfatta dina data i rutor, eftersom det här är standardstat för geom_bar (). Det innebär att följande två kodkod ger samma diagram: >> ggplot (quakes, aes (x = djup)) + geom_bar (binwidth = 50)> ggplot (quakes, aes (x = djup)) + stat_bin (binwid th = 50)
Utjämningsdata
Paketet ggplot2 gör det också mycket enkelt att skapa regressionslinjer via dina data. Du använder funktionen stat_smooth () för att skapa denna typ av linje.
Det intressanta med stat_smooth () är att det använder sig av lokal regression som standard. R har flera funktioner som kan göra detta, men ggplot2 använder funktionen Loess () för lokal regression. Detta innebär att om du vill skapa en linjär regressionsmodell måste du berätta stat_smooth () för att använda en annan mjukare funktion.Du gör detta med metodargumentet.
För att illustrera användningen av en jämnare, börja med att skapa en spridd plot av arbetslöshet i longley dataset: >> p p
Nästa, lägg till en mjukare. Det här är lika enkelt som att lägga till stat_smooth () i din kodrad. >> p + stat_smooth ()
Din grafik ska se ut som diagrammet till vänster om bilden nedan.
Ibland genererar ggplot2 meddelanden med extra tips och information. Så länge du inte ser varning eller fel kan du säkert ignorera dessa meddelanden. I det här fallet anger stat_smooth () att standardmjukare är en metod som heter
Loess
(lokal utjämning). Meddelandet säger också att du kan använda alternativa utjämningsmetoder.
Använd slutligen stat_smooth () för att passa och rita en linjär regressionsmodell. Du gör detta genom att lägga till argumentmetoden = "lm": >> p + stat_smooth (metod = "lm")
Din grafik ska nu se ut som plottet till höger. stat_smooth (). "Width =" 535 "> Lägga till regressionslinjer med stat_smooth ().
Göra ingenting med identitet
Ibland vill du inte att ggplot2 sammanfattar dina data i diagrammet. Det händer vanligtvis när dina data är redan i förväg sammanställd eller när varje rad i din dataram ska avbildas separat. I dessa fall vill du berätta för ggplot2 att ingenting gör alls, och staten att göra detta är stat_identity (). Du har säkert märkt att stat_identity är standardstatistik för punkter och rader.