1. ProgrammeringRHvordan legge linjer til en tomt i R

Av Andrie de Vries, Joris Meys

I R legger du linjer til et plott på en veldig lik måte som å legge til poeng, bortsett fra at du bruker linjene () -funksjonen for å oppnå dette.

Men først bruker du litt R-magi for å lage en trendlinje gjennom dataene, kalt en regresjonsmodell. Du bruker lm () -funksjonen for å estimere en lineær regresjonsmodell:

passform <- lm (venter ~ utbrudd, data = tro)

Resultatet er et objekt av klasse lm. Du bruker funksjonen montert () for å trekke ut monterte verdier fra en regresjonsmodell. Dette er nyttig, fordi du deretter kan plotte de monterte verdiene på en tomt. Dette gjør du neste gang.

For å legge til denne regresjonslinjen til det eksisterende plottet, bruker du ganske enkelt funksjonslinjene (). Du kan også spesifisere linjefargen med col-argumentet:

> plot (trofast)
> linjer (trofaste $ utbrudd, montert (passform), col = "blå")

En annen nyttig funksjon er abline (). Dette lar deg tegne horisontale, vertikale eller skrå linjer. For å tegne en vertikal linje ved posisjonsutbrudd == 3 i fargen lilla, bruk følgende:

> abline (v = 3, col = "lilla")

Den resulterende grafikken din skal ha en vertikal lilla linje ved utbrudd == 3 og en blå regresjonslinje.

image0.jpg

For å lage en horisontal linje bruker du også abline (), men denne gangen spesifiserer du h-argumentet. Lag for eksempel en horisontal linje ved gjennomsnittlig ventetid:

> abline (h = middel (trofast $ venter))

Du kan også bruke funksjonen abline () for å lage en skrånende linje gjennom plottet ditt. Ved å spesifisere argumentene a og b kan du faktisk tegne en linje som passer til den matematiske ligningen y = a + b * x. Med andre ord, hvis du spesifiserer koeffisientene til din regresjonsmodell som argumentene a og b, får du en linje gjennom dataene som er identiske med prediksjonslinjen:

> abline (a = coef (fit) [1], b = coef (fit) [2])

Enda bedre, kan du ganske enkelt passere lm-objektet til abline () for å tegne streken direkte. (Dette fungerer fordi det er en metode abline.lm ().) Dette gjør koden din veldig enkel:

> abline (passform, col = “rød”)