Introduktion
Formålet med dette kursus er at lære dig, hvordan man håndterer, analyserer og præsenterer data. Data science er et stort område, der kan omfatte alle typer studiedesign og analyser. Den eksplosive udvikling inden for data science i de senere år skyldes blandt andet følgende:
- Storskalaindsamling og strukturering af data. Digitaliseringen har øget mulighederne for at indsamle data, og derfor indsamler vi data i et hidtil uset tempo. Metoderne til datalagring er blevet betydeligt mere effektive. Stat, kommuner, regioner, virksomheder og organisationer indsamler i dag store mængder data uafbrudt.
- Forbedret software og hardware til analyse af data. Hardware og software til data science har udviklet sig hurtigt, især inden for maskinlæring (machine learning, ML) og kunstig intelligens (AI), hvor udviklingen har været voldsom i de senere år. I dag er softwaren så effektiv og fleksibel, at en nybegynder i løbet af et par uger kan begynde at bruge de mest avancerede metoder.
- Formidling af data science. Der findes nu nærmest uendeligt meget undervisningsmateriale om data science online. Denne tilgængelighed har ført til, at stadig flere lærer at håndtere disse værktøjer. Der findes mange initiativer, der skal lære offentligheden data science, for eksempel Elements of AI, hvis mål er at lære alle borgere i Sverige og Finland om kunstig intelligens (AI).
- Øget interesse for data. Data er blevet et værdifuldt aktiv i alle organisationer, fra statslige myndigheder til små og store virksomheder. Det har ført til, at flere individer og organisationer interesserer sig for data.
graph TD;
A(Data science)-->B(Medicin)
A-->C(Finans);
A-->D(Fysik);
A-->E(Kemi);
A-->F(Biologi);
A-->G(Samfund);
A-->H(osv.);Figur 1.1: Data science findes inden for alle fagområder.
Data science er agnostisk
Du kan bruge denne bog til medicinsk forskning, finansielle analyser, forskning inden for biologi, kemi eller samfundsvidenskab. Hardware, software og analysemetoder er identiske i alle brancher.
1.1 Forudsætninger
Tidligere erfaring med programmering er en fordel, men ikke nødvendig for at læse denne bog. Hvem som helst kan lære at bruge R effektivt. Jo bedre du bliver til at skrive kode, desto lettere bliver dit arbejde. Din evne til at skrive kode vil være en nærmest lineær funktion af den tid, du investerer i at lære.
1.2 Målsætning
Denne bog giver dig fundamentet til selv at kunne gennemføre et studie. Men du bliver ikke ekspert blot ved at læse denne bog. For at blive dygtig kræves yderligere fordybelse, og i denne bog får du passende henvisninger til, hvor du kan fordybe dig. Du vil dog indse, at denne bog rækker langt og giver dig det fundament, der er nødvendigt for at arbejde med de metoder og emner, der vedrører dig mest.
Det er vigtigt at have gode opslagsværker for at kunne fordybe sig. Til statistiske metoder og machine learning anbefaler vi:
- Elements of Statistical Learning
- Fundamentals of Clinical Trials
- Applied Predictive Modelling
- Deep Learning with R
- Tidy Modeling with R
1.3 Programmering i R
R er et fortolket sprog (eng interpreted language), hvilket betyder, at du skal angive kommandoer for at udføre operationer (for eksempel beregninger). At programmere eller kode betyder, at man skriver kommandoer. På din anmodning vil R forsøge at udføre disse kommandoer.
1.3.1 Hvorfor programmere, når man kan klikke?
Der er en fundamental forskel på fortolkede sprog og programmer med grafisk brugerflade (for eksempel SPSS, Excel osv.). Selv om programmer som Excel og SPSS virker enkle og bekvemme, fordi man kan analysere udelukkende ved at klikke, har de udtalte begrænsninger. For eksempel er det svært at holde styr på alle de klik, der er foretaget, hvilket kan gøre det nærmest umuligt at reproducere resultaterne. Desuden er disse programmer begrænset af de funktioner, som producenten tilbyder. Hvis du bruger R (eller Python), kan du følge din kode linje for linje og analysere præcis, hvad du har gjort. Du kan når som helst justere dine kommandoer og straks få opdaterede resultater. Du får også adgang til de allernyeste metoder og teknologier, fordi hundredtusindvis af eksperter dagligt arbejder på at udvikle R (og Python). R og Python er gratis og dominerer i dag markedet for forskning, data science og statistik (Figur 1.2). Der findes kommercielle sprog (for eksempel SAS, Stata), men brugen af dem falder hvert år til fordel for R og Python.

1.4 Arbejdsgang
Figur 1.3 viser, hvilke trin der indgår i et typisk studie.
graph TD; A(Importere data)--> B(Inspicere data)--> C(Forberede og transformere data)--> D(Visualisere data)--> E(Beskrive data)--> F(Skabe prædiktionsmodeller)--> H(Kommunikere resultater)Figur 1.3: Trin i et studie.
For at analysere data i R skal data først importeres. Du kan importere stort set enhver type data til R (SAS, STATA, SPSS, Excel, CSV, osv.). Når data er importeret, skal der foretages en omhyggelig inspektion. Inspektionen skal kortlægge kolonnernes og rækkernes karakter.
For kolonnerne (variablerne) omfatter dette blandt andet:
- Kortlægning af, hvilke typer variabler der findes, og om R har fortolket variabeltypen korrekt: En variabel, der er numerisk (f.eks. kropsvægt), skal fortolkes som numerisk (numerical) af R for at undgå fejlagtige analyser.
- Kortlægning og justering af kategoriske variablers forskellige niveauer (levels): Variabler, der ikke er numeriske, er oftest faktorer i R (factor). Hver faktorvariabels niveauer skal gennemgås og justeres efter behov.
- Kortlægning af andelen missing for hver variabel: Missing data er et problem i næsten alle analyser. Det er vigtigt at kortlægge, hvor stort problemet er, samt om og hvordan det kan afhjælpes.
- Kortlægning af variablernes fordelinger: Enkle beskrivelser af variablernes fordelinger (maksimumværdi, minimumværdi, middelværdi, medianværdi osv.) skal foretages.
- Oprettelse af nye variabler (kolonner).
For rækkerne (observationerne) omfatter dette blandt andet:
- Afklaring af, om rækkerne repræsenterer unikke individer.
- Afklaring af, om samme individ kan forekomme flere gange i data.
Vigtige begreber
- Visualisering: oprettelse af grafer og figurer.
- Deskription: Enkle matematiske beskrivelser af data. For eksempel brug af middelværdier og standardafvigelse til at beskrive fordelinger.
- Prædiktion: Brug af en model til at lave en forudsigelse om et udfald eller en værdi. Et eksempel på et udfald er død (ja/nej), og et eksempel på en værdi er vægttab i kilogram. Man kan prædiktere (forudsige), om en patient vil overleve eller ej, eller hvor meget en person vil tabe sig.
- Prædiktionsmodel (statistisk model): Prædiktionsmodeller bruges til at (1) beskrive sammenhænge mellem variabler eller (2) lave prædiktioner. De oprettes enten med klassisk regressionsanalyse eller maskinlæring. Alle modeller udgør en matematisk beskrivelse af data. De kan bruges til at estimere effekten af variabler (f.eks. hvordan kolesterol påvirker risikoen for hjerteanfald) eller lave prædiktioner (f.eks. hvor stor risikoen er for at få et hjerteanfald).
- Tidy data: Data, hvor kolonner udgør variabler, og rækker udgør observationer.
- Data wrangling: Bearbejdning af data, så analyser kan foretages.
- Visualisering af data er næsten altid vigtigt. Visualisering kan foretages som et led i inspektion, deskription eller afrapportering af slutresultater.
Ofte oprettes også statistiske modeller (prædiktionsmodeller) for at studere sammenhænge mellem variabler eller for at skabe prædiktionsmodeller. Oftest kan den samme model bruges til at studere sammenhænge og lave prædiktioner.
1.5 Data frame
At importere data betyder ganske enkelt, at du åbner data og gør dem tilgængelige i R. Data refererer oftest til en rektangulær tabel, der består af rækker og kolonner. Rækkerne er observationer (for eksempel patienter), og kolonnerne er variabler. I R kaldes disse tabeller data frames, hvilket ofte forkortes df.
| Navn | Alder | Indkomst | Uddannelse | Kolesterol |
|---|---|---|---|---|
| Adam | 45 | 324211 | Videregående uddannelse | 4.5 |
| Zara | 51 | 198765 | Folkeskole | 7.6 |
| John | 49 | 250643 | Gymnasium | 3.2 |
Eksempel på en data frame.
1.5.1 Andre datatyper
Med R kan du analysere data frames, fotos, illustrationer, lydoptagelser og video. Da denne bog henvender sig til nybegyndere, vil data frames være i fokus.
1.5.2 Software
- R: R er et sprog og en software til databehandling og grafik.
- RStudio: RStudio blev skabt for at lette arbejdet i R. Fra og med oktober 2022 skifter RStudio navn til
Posit. For at arbejde med R starter du blot Rstudio. Med Rstudio laver du også rapporter i PDF, EPUB og HTML. - Pakker (eng. package): Du kan udvide funktionaliteten i R ved at installere pakker. Der findes cirka 16000 tilgængelige pakker.
1.6 Om R og Rstudio
R er et sprog, der er udviklet specielt til at analysere og visualisere data. R er ekstremt effektivt til dette formål. Intet andet sprog er lige så effektivt, fleksibelt og alsidigt. R blev udviklet på Bell Laboratories (tidligere AT&T, nu Lucent Technologies) af John Chambers og kolleger. Ud over standardinstallationen af R findes yderligere 16000 pakker, hvilket skaber enorme muligheder.
1.6.1 Installation af R
Download R (desktop version) fra CRAN (The Comprehensive R Archive Network): https://cloud.r-project.org.
- Download og installer R. Vælg det rigtige operativsystem.
- Installer som sædvanligt på din computer.
1.6.2 Sådan installerer man RStudio
RStudio er et såkaldt IDE (integrated development environment), hvilket betyder, at det er et program, der gør det lettere at programmere. RStudio gør det lettere at holde styr på scripts, filer, grafer og dokumenter. Download RStudio her: http://www.rstudio.com/download.
- Download og installer RStudio. Gratisversionen er fuldt ud tilstrækkelig.
- Installer som sædvanligt på din computer.
RStudio ser ud som vist i Figur 1.4.

Bemærk i Figur 1.4, at der er fire vinduer i RStudio. Øverst til venstre findes Source/Script, som bruges til at skrive og gemme kode (scripts). Du vil skrive din kode i dette vindue. Under Source/Script findes Console, som kan bruges til at køre korte kommandoer. Det er også i Console, at du får besked om, hvorvidt dit script kunne eksekveres (køres).
1.7 At køre kode i R
For at køre kode i Console kan du skrive din kommando på den sidste linje og trykke på Enter. I Figur 1.5 ser du et eksempel på, hvordan kommandoen 1+1 eksekveres.

For at køre kode i Source/Script markerer du de linjer, du vil køre, og trykker på Run øverst til højre i feltet.

Som det fremgår af Figur 1.4, findes der yderligere to vinduer i R, nemlig Enviroment (Miljø) og Værktøjer. Under Environment ser du alle data frames og andre objekter, du opretter og importerer. Under Værktøjer ser du flere paneler (File, Plots, Packages, Help osv.). Figur 1.7 viser, at disse paneler præsenterer dine filer, grafer, du har lavet, tilgængelige pakker og hjælpedokumentation for alle pakker og funktioner.




Figur 1.7: Værktøjer i Rstudio.