Inhoudsopgave:
- U hebt stat_bin () al gezien om uw gegevens samen te vatten in bins, omdat dit de standaardstat van geom_bar () is. Dit betekent dat de volgende twee coderegels identieke plots produceren: >> ggplot (aardbevingen, aes (x = diepte)) + geom_bar (binwidth = 50)> ggplot (aardbevingen, aes (x = diepte)) + stat_bin (binwid th = 50)
- Het interessante van stat_smooth () is dat het standaard gebruikmaakt van lokale regressie. R heeft verschillende functies die dit kunnen doen, maar ggplot2 gebruikt de loess () -functie voor lokale regressie. Dit betekent dat als u een lineair regressiemodel wilt maken, u stat_smooth () moet vertellen om een andere, vloeiender functie te gebruiken.Dit doe je met het methode-argument.
Video: RStudio basics of R Markdown 2024
Na data, mapping en geoms beschrijft het vierde element van een ggplot2-laag in R hoe de gegevens moeten worden samengevat. In ggplot2 verwijs je naar deze statistische samenvatting als een stat.
Een zeer handige functie van ggplot2 is het bereik van functies om uw gegevens in de plot samen te vatten. Dit betekent dat u uw gegevens vaak niet vooraf hoeft te samenvatten. De hoogte van staven in een histogram geeft bijvoorbeeld aan hoeveel waarnemingen van iets u in uw gegevens hebt. De statistische samenvatting hiervoor is om de waarnemingen te tellen. Statistici verwijzen naar dit proces als binning, en de standaardstatistiek voor geom_bar () is stat_bin ().
Analoog aan de manier waarop elke geom een bijbehorende standaardstatistiek heeft, heeft elke stat ook een standaardgebe.
Dus dit roept de vraag op: Hoe beslis je of je een geom of een stat gebruikt? In theorie maakt het niet uit of je eerst de geom of de stat kiest. In de praktijk is het echter vaak intuïtief om eerst met een type plot te beginnen - met andere woorden, geef een geom op. Als je dan nog een laag statistische samenvatting wilt toevoegen, gebruik dan een stat.
In deze grafiek gebruikte u dezelfde gegevens om eerst een scatterplot met geom_point () te maken en vervolgens voegde u een vloeiende lijn toe met stat_smooth ().
Hier enkele praktische voorbeelden van het gebruik van statistische functies.
Stat | Beschrijving | Standaardgeom |
---|---|---|
stat_bin () | Telt het aantal waarnemingen in bins. | geom_bar () |
stat_smooth () | Creëert een vloeiende lijn. | geom_line () |
stat_sum () | Voegt waarden toe. | geom_point () |
stat_identity () | Geen samenvatting. Plot gegevens zoals het is. | geom_point () |
stat_boxplot () | geeft een overzicht van de gegevens voor een box-and-whisker-plot | geom_boxplot () |
U hebt stat_bin () al gezien om uw gegevens samen te vatten in bins, omdat dit de standaardstat van geom_bar () is. Dit betekent dat de volgende twee coderegels identieke plots produceren: >> ggplot (aardbevingen, aes (x = diepte)) + geom_bar (binwidth = 50)> ggplot (aardbevingen, aes (x = diepte)) + stat_bin (binwid th = 50)
Smoothing-gegevens
Het ggplot2-pakket maakt het ook heel eenvoudig om regressielijnen door uw gegevens te maken. U gebruikt de functie stat_smooth () om dit type lijn te maken.
Het interessante van stat_smooth () is dat het standaard gebruikmaakt van lokale regressie. R heeft verschillende functies die dit kunnen doen, maar ggplot2 gebruikt de loess () -functie voor lokale regressie. Dit betekent dat als u een lineair regressiemodel wilt maken, u stat_smooth () moet vertellen om een andere, vloeiender functie te gebruiken.Dit doe je met het methode-argument.
Om het gebruik van een vloeiender te illustreren, begint u met het creëren van een spreidingsdiagram van werkloosheid in de longley-gegevensset: >> p p
Voeg vervolgens een vloeiendere toe. Dit is net zo eenvoudig als het toevoegen van stat_smooth () aan uw regel code. >> p + stat_smooth ()
Uw afbeelding moet er uitzien als de grafiek links van de afbeelding hieronder.
Soms genereert ggplot2 berichten met extra tips en informatie. Zolang u geen waarschuwing of fout ziet, kunt u deze berichten veilig negeren. In dit geval vertelt stat_smooth () u dat de standaardsoepellere methode is
löss
(lokale afvlakking). Het bericht zegt ook dat u alternatieve verzachtingsmethoden kunt gebruiken.
Gebruik ten slotte stat_smooth () om een lineair regressiemodel te passen en uit te zetten. U doet dit door de argumentmethode = "lm" toe te voegen: >> p + stat_smooth (methode = "lm")
Uw afbeelding moet er nu uitzien als de plot aan de rechterkant. stat_smooth (). "Width =" 535 "> Regressielijnen toevoegen met stat_smooth ().
Niets doen met identiteit
Soms wilt u niet dat ggplot2 uw gegevens in de plot samenvat. Dit gebeurt meestal wanneer uw gegevens zijn al vooraf samengevat of wanneer elke regel van uw dataframe afzonderlijk moet worden geplot. In deze gevallen wilt u ggplot2 niets doen, en de stat om dit te doen is stat_identity (). U hebt waarschijnlijk opgemerkt dat stat_identity is de standaardstatistiek voor punten en lijnen.