Kort introduktion till R

Introduktion för nybörjare till programspråket R. R är jättebra för att bearbeta & analysera olika typer av data.

1. R är namnet på ett programspråk och på ett datorprogram. Programspråket R kan användas i olika datorprogram. Ett bra program är RStudio. Både R och RStudio kan laddas ned gratis. Du måste installera R för att RStudio ska fungera.

Bild på RStudio nedan. Öppna nytt skript (rutan uppe till vänster) med snabbkommandot Ctrl + Shift + n (Mac: Cmd + Shift + n).

2. Vi kan skriva kommandon i konsolen. Placera markören i Konsolen. Skriv 1+2 och tryck Retur. Programmet svarar med resultatet: 3. Inget sparas.

3. Vi kan skriva kommandon i skriptfönstret. Placera markören på första raden i skriptfönstret och skriv 1+2. Tryck Retur. Markören byter rad men ingenting annat händer. Enklast är att skriva ett kommando per rad.

4. Kör kod i skript genom att markera den kod du vill köra. Markera texten 1+2. Tryck Ctrl + Retur (Mac: Cmd + Retur). Du kan även ställa markören på samma rad eller före det kommando du vill köra och trycka Ctrl + Retur.

5. Skript kan sparas som R-fil. Snabbkommando för att spara: Ctrl + s (Mac: Cmd + s). Filen sparas med ändelsen .R och innehåller enbart den text vi skrivit i skriptet. De resultat som eventuellt skapas när skriptet körs sparas inte i .R-filen.

6. R kommer ihåg saker med hjälp av R-objekt. Ett R-objekt kan innehålla många olika typer av saker: en siffra, texten från en roman, ett eller flera diagram, en eller flera tabeller. Objekt spraras inte automatiskt på hårddisken.

Skapa nytt objekt med uppdragsoperatören <-. Till vänster om <- skriver vi namnet på vårt nya objekt som vi vill skapa. Till höger beskriver vi det som objektet ska innehålla. Exempel:

mitt_objekt <- 1+2

Skriv texten ovan i ditt skript och tryck Ctrl + Retur för att köra detta som kod. När du har kört koden skapas R-objektet mitt_objekt. Objektets namn syns nu i Environment (uppe till höger i RStudio). Objektet innehåller siffran 3.

Om det redan finns ett objekt som heter mitt_objekt skrivs det gamla objektet över. Programmet varnar inte när vi skriver över gamla objekt.

Snabbkommando för att skriva uppdragsoperatören: Alt + –

7. Vi kan hämta information i objekt genom att skriva objektets namn i skriptet och köra detta som kod. Skriv mitt_objekt och tryck Ctrl + Retur. Objektets resultat visas i konsolen.

8. R har färdiga funktioner. Alla funktioner i R skrivs med namn på funktionen och parentes. Exempel: sum(). I parentesen till funktionen skriver vi argument till funktionen. Varje argument separeras med kommatecken. Exempel: sum(3,4,5) ger oss summan av 3+4+5. I detta exempel har vi tre argument i form av de tre siffrorna.

9. Funktioner kan hämta information i R-objekt. Följande 4 rader skript skapar tre objekt och beräknar sedan summan.
tal_1 <- 3
tal_2 <- 4
tal_3 <- 5
sum(tal_1 , tal_2 , tal_3 )

10. Resultat från funktioner kan sparas i objekt. Exempel: min_summa <- sum(3,4,5). Skriv detta i ditt skript och tryck Ctrl + Retur för att köra koden. Objektet min_summa sparas och innehåller värdet 12.

11. I skript kan vi skriva anteckningar, kommentarer, med hjälp av symbolen #. Om en rad inleds med # så ignorerar programmet denna del av koden. Exempel:
# Denna rad är en kommentar och ignoreras av programmet
# Nästa rad är ett kommando som sparar en text i ett objekt
mitt_textobjekt <- "hallå världen!"

12. En textsträng är en samling tecken som programmet uppfattar som text. Använd citattecken för att skapa text. Programmet kan inte utföra matematiska operationer på textsträngar. Exempel:
objekt_1 <- "13"
objekt_2 <- 13
Dessa två objekt, objekt_1 och objekt_2 uppfattas olika av programmet. Det första objektet innehåller en textsträng. Det andra obejektet innehåller talet 13.

13. Funktionen c() kan samla flera värden som ett argument. Exempel:
# Skapa ett objekt med talen 3, 4 och 5
mina_tal <- c(3,4,5)
# Beräkna summan
sum( mina_tal )

14. R-paket innehåller funktioner. I R kan vi ladda ned gratis R-paket från internet med nya funktioner till programmet. Det finns tusentals R-paket. Exempel: tidyverse är ett paket som innehåller flera andra paket med många funktioner. För att ladda ned och installera paketet kör vi följande kod: install.packages("tidyverse")

15. Installerade paket måste laddas varje gång vi startar om RStudio. Därför inleds ofta skript med följande rad: library("tidyverse").

Vi behöver endast köra kommandot install.packages("tidyverse") en gång. Vi behöver köra kommandot library("tidyverse") varje gång vi startar om RStudio och vill använda någon av funktionerna i paketet tidyverse.

16. R-funktioner kan skrivas som argument i andra funktioner. Exempel:
# Använd funktion c() i funktion sum()
sum( c(3,4,5) )
# Beräkna summan av de logaritmerade värdena
sum( log( 3,4,5 ) )

17. Pipes är jätteanvändbart. I paketet tidyverse finns paketet magrittr och där finns den speciella pipefunktionen %>%. Pipefunktionen skickar resultatet av ett kommando till vänster vidare till nästa funktion till höger. Pipefunktionen placerar det skickade resultatet som första argument i nästa funktion. På detta sätt kan vi skapa en lättöverskådlig kedja av åtgärder. Exempel:
# Följande två rader ger samma resultat:
mitt_resultat <- sum( log( c(3,4,5) ) )
mitt_resultat <- c(3,4,5) %>% log() %>% sum()

Den sista raden kan vi läsa som “ta siffrorna i c()” OCH SEN “använd funktionen log()” OCH SEN “använd funktionen sum()“. Resultatet sparas i objektet mitt_resultat.

Snabbkommando för pipe %>% är Ctrl + Shift + m.

18. Definiera din arbetskatalog med funktionen setwd(). I parentesen till setwd() skriver vi en textsträng med katalogadressen vi vill att skriptet ska arbeta mot. Det är denna katalog vi hämtar data från och exporterar våra resultat från RStudio. I RStudio kan vi även använda meny Session > Set Working Directory > Choose Directory…

19. R kan ha flera samlingar med data öppna samtidigt. Eftersom R kan ha många objekt öppna samtidigt så kan vi till exempel ha olika tabeller sparade i olika objekt när vi arbetar. Vi kan hämta hela eller delar av dessa och sammanfoga vid behov.

Detta innebär att om vi till exempel vill lägga till en kolumn i en tabell som är sparade i ett objekt, så måste vi först hänvisa till det objekt där denna tabell är sparad.

I analysprogram som Stata och SPSS arbetar vi ofta med en tabell i taget och utför alla kommandon på denna tabell.

20. R kan läsa alla möjliga filformat. Vill du importera en datafil av någon särskild typ till R behöver du hitta en funktion som kan läsa det filformatet. Exempel:
# Importera csv-fil
min_data <- read.csv(file="min fil på hårddisken.csv")

21. Olika funktioner kan använda olika argument. I exempeln ovan använder funktionen sum() siffror för att beräkna en summa, medan funktionen read.csv() använder en textsträng för att hitta en fil. Funktionen read.csv() har flera andra frivilliga argument som vi kan använda om vi vill. Till exempel argumentet sep:
# Läs in en fil där observationerna är separerade med kommatecken.
read.csv("min_fil_1.csv", sep=",")
# Läser in en fil där observationerna är separerade med semikolon.
read.csv("min_fil_2.csv", sep=";")

22. Hjälp för till exempel funktionen read.csv hittar vi genom att köra kommandot help(read.csv) eller ?read.csv. I hjälpavsnittet hittar vi frivilliga alternativ och beskrivning av hur funktionen fungerar. Där finns ofta även läsvärda exempel på hur funktionen kan kombineras med andra funktioner.

23. Fusklappar finns på RStudios webb.

Om du tyckte den här beskrivningen var lite väl kortfattad finns en mer utförlig i vår bok R för samhällsvetare.

5 thoughts on “Kort introduktion till R

Leave a comment