R
R er et gratis statistikkprogram som er tilgjengelig både for Windows og Linux. Denne veiledningen tar for seg bruk i Windows.
- Hvordan starte R
- Hvordan avslutte R
- Hvordan komme igang
- Eksempler på bruk og nyttige funksjoner
- Vanlige problemer og løsninger
- Lage en .R-fil
- Kjøre en .R-fil
- Lese data fra fil
- Relevante linker og hjelp
Hvordan starte R
For å starte R trykker du Start -> Programs -> R. (R ligger med andre ord i Start-menyen). Et eget vindu vil da poppe opp (se bilde under), dette er heretter kalt RGui. Denne inneholder bl.a et "R Console" vindu der du kan angi ulike R-kommandoer.

Hvordan avslutte R
Gi kommandoen quit() eller q() i R Console-vinduet, eller trykk på krysset øverst i høyre hjørne.
> q() Save workspace image? [y/n/c]:
Hvis du ønsker å lagre det du har jobbet med (varibler og innhold) til neste gang du bruker R trykk: y, hvis ikke trykk: n.
Hvis du lagrer vil denne linjen komme opp neste gang du starter R:
[Previously saved workspace restored]
Hvordan komme igang
R er en pakke som baserer seg på at du skriver ut ulike kommandoer/funksjonskall, mye likt Matlab. For de som kjenner statistikkprogrammet Splus, så er R svært likt Splus. De fleste kommandoer kan utføres på samme måte i R og Splus. Når du har startet opp R, vil du få opp et R Console-vindu der symbolet ">" kommer opp. Etter dette symbolet kan du skrive ulike kommandoer.
Hvis du f.eks ønsker at variablen x skal inneholde tallet 10 skriver du:
> x=10
eller
> x<-10
NB: I R kan du bruke enten "=" eller "<-" for å tilordne variable, de fungerer helt likt.
R printer ikke automatisk ut resultatet når du tilordner variable. (x=10 i R fungerer som x=10; i Matlab) For å se på hva varibelen x inneholder må du skrive:
> x
du får da utskriften:
[1] 10
Eksempler på bruk og nyttige funksjoner
R kan beregne det meste du trenger innenfor statistikk. Her er noen eksempler på vanlig bruk og funksjoner som er greie å vite om:
Lage en vektor
- > z=c(1,2,3,4,5,6)
lager en 1x6-vektor med verdiene 10, 4, og 5
- > dim(z)=c(2,3)
> z
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
gjør om z til en 2x3-matrise
Gjennomsnitt og standardavvik
- mean(z)
beregner gjennomsnittet til vektoren z
- sd(z)
beregner standardavviket til vektoren z
Bruk av sannsynlighetsfordelinger
De vanligste sannsynlighetsfordelingene finnes i R. Blant annet:
- norm(): normalfordelingen
- beta(): betafordeling
- gamma(): gammafordeling
- binom(): binomialfordeling
Ved å prefikse fordelingsnavnene med en av bokstavene d,p eller r, kan du bruke funksjonene under:
- tettheten/pdf: (d)
- kummulativ tetthet/cdf (p)
- trekke fra fordelingen (r)
Eks:
- > x = rnorm(n)
lager en vektor x med n tilfeldige variable fra normalfordelingen med mean=0, sd=1 (dette er default hvis du ikke skriver inn mean og sd)
- > rnorm(n,10,9)
trekker n tilfeldige variable fra normalfordelingen med mean=10, sd=9
- > pnorm(5,1,0.5)
gir sannsynligheten for at en variabel er <=5 i normalfordelingen med mean=1 og sd=0.5
Lage plott
- > hist(x)
lager et histogram av x
- > plot(x)
lager forskjellige typer plott av x (histogram, grafer, osv), avhengig av hva x inneholder. Trykk på enter for å se neste plott. Hvis du vil lagre plottene dine: hold pekeren over plottet og trykk på høyre museknapp, velg "save".
Andre nyttige funksjoner
- > summary(x)
Printer ut en kort statistisk beskrivelse av variabelen x. Hvis x er en vektor vil den bl.a gi standardavvik, median og gjennomsnitt til elementene i vektoren.
Vanlige problemer og løsninger
Error: syntax error
Dette er den vanligste feilen i R, og betyr at du har feil syntaks, dvs. du har skrevet inn en kommando som ikke er gyldig.
Eks:
- Multiplikasjon
> n=10 > k=10n Error: syntax error
Her har vi glemt å bruke * mellom 10 og n for multiplikasjon. Rett syntaks er:
> n=10 > k=10*n > k [1] 100
- Vektorer/arrayer
Tilordningen under ville vært rett i Matlab, men fungerer ikke i R:
> z=(1,2,3,4,5,6) Error: syntax error
Rett syntaks er:
> z=c(1,2,3,4,5,6) > z
[1] 1 2 3 4 5 6
Lage en .R-fil
Når du skal skrive store programmer i R blir det litt tungvint å skrive alt i kommandovinduet, og du har dessuten dårlige lagringmuligheter. Da kan det heller lønne seg å lagre kommandoene i en .R-fil (på samme måte som vi lager .m-filer i matlab). Du bruker din vanlige tekstbehandler (f.eks Emacs eller TextPad), og lagrer filen som "filnavn.R". I filen skriver du kommandoene på vanlig måte på hver sin linje. Alt som kommer etter tegnet # på en linje leses som kommentarer.
Du kan også trykke File -> New script i RGui. Du får da opp et R Editor-vindu som du kan skrive koden i. For å lagre filen trykker du på File -> save.
Eks:
Her er filen "eks.R" som jeg har laget i emacs:
##Dette er en eksempelfil y=c(10,9,50,100,6) #lager en vektor med 5 verdier mean(y) #finner gjennomsnittet sd(y) #finner standardavviket y #printer ut y print(y) #du kan også skrive dette for å printe ut y summary(y) #skriver ut viktig statistisk info om y plot(y) #plotter y, plottene blir lagret i fila Rplots.ps i Linux y2=y*5 #multipliserer alle elementer i y med 5. y2 #printer ut den nye vektoren ##Slutt på eksempelfil
Kjøre en .R-fil
For å kjøre en fil må du først åpne den. Dette gjør du ved å trykke File -> Open Script. Du får da opp et vindu, R Editor, med filen din. Du kan kjøre kommandoer ved å markere de kommandoene du ønsker å kjøre, trykke på høyre museknapp og så på "Run line or selection". Se figuren under:

Kommandoene du markerer vil bli kjørt i R Console-vinduet.
Lese data fra fil
I statistiske beregninger har man ofte bruk for å tolke store mengde data fra f.eks en tekstfil. I R kan du lese inn data fra tekstfiler blant annet med funksjonen read.table(). Under ser du filen "matpakke.txt"
"klasse" "antMatpakke" "antElever" 1 10 20 2 8 21 3 5 20 4 10 25 5 8 19 6 1 24 7 5 15
For å lese inn denne filen og legge all informasjonen i variabelen "mat":
> mat<-read.table("matpakke.txt", header=T)
"mat" inneholder nå:
> mat klasse antMatpakke antElever 1 1 10 20 2 2 8 21 3 3 5 20 4 4 10 25 5 5 8 19 6 6 1 24 7 7 5 15
Forklaring
matpakke.txt: filnavnet header=T: første linje i filen skal tolkes som overskrift til kolonnene
Relevante linker og hjelp
Linker:
Annen hjelp:
I kommandovinduet:
skriv: help("funksjon du trenger hjelp til"), f.eks:
> help(plot)
plot package:graphics R Documentation
Generic X-Y Plotting
Description:
Generic function for plotting of R objects. For more details
about the graphical parameter arguments, see 'par'.
Usage:
plot(x, y, ...)
......OSV.....
I RGui:
Trykk på Help-menyen. Her står det meste :)