Inspektion af rådata

Funktioner til inspektion af rådata

I base R (grundinstallationen af R) findes funktioner, som kan bruges til at inspicere rådata. Med funktionen View() vises data i en tabel, der kan søges i og sorteres. Det er nyttigt, når man vil foretage manuelle kontroller af rådata.

I dette kapitel arbejder vi med rhc data, som blev forklaret i det foregående kapitel. Hvis du ikke har downloadet data, kan du gøre det efter instruktionerne i det foregående kapitel.

View(rhc)

Dette vindue åbnes, når du bruger View():

RStudio-vinduet fra View(rhc) med datasættet rhc som sorterbar tabel med kolonner som age, alb1, ca og cat1

Øverst i vinduet findes funktioner, som du kan bruge til at filtrere i datasættet, bladre mellem kolonnerne og søge i hele datasættet. Disse funktioner fremgår af billedet nedenfor.

View-vinduet i RStudio med pile til knapperne for at åbne i nyt vindue, filtrere, bladre mellem kolonner og søge

Vi fortsætter med head() og tail(), som viser henholdsvis de første 5 og de sidste 5 rækker i vores data frame. Du kan justere dette ved at angive, hvor mange rækker du vil se, som andet argument i disse funktioner.

## Første 3 rækker
head(rhc, 3)

## Sidste 2 rækker
tail(rhc, 3)

Resultatet af head():

adld3p <int> age <dbl> alb1 <dbl> amihx <int> aps1 <int> bili1 <dbl> ca <chr> card <chr> cardiohx <int>
0 70.25098 3.500000 0 46 1.0097656 Yes Yes 0
NA 78.17896 2.599609 0 50 0.6999512 No No 1
NA 46.09198 3.500000 0 82 1.0097656 Yes Yes 0

Resultatet af tail():

adld3p <int> age <dbl> alb1 <dbl> amihx <int> aps1 <int> bili1 <dbl> ca <chr> card <chr> cardiohx <int>
1 80.48499 4.099609 0 43 1.000000 No No 1
NA 67.37897 3.500000 0 51 1.009766 No No 0
NA 54.66397 3.000000 0 101 21.796875 No No 0

Pakken dplyr har funktionen glimpse(), som giver et overblik over data. Vi bruger nu glimpse() på rhc:

glimpse(rhc)
Udskrift af glimpse(rhc) med 5.735 rækker og 63 kolonner, hver variabels type og dens første værdier
Udskriften er forkortet.

Funktionen glimpse() giver således et hurtigt overblik over, hvilke variabler der findes i data framen, deres variabeltyper og de første værdier af variablerne.

Med funktionen summary() kan vi ligeledes generere en beskrivelse af alle variablerne. Sammenlignet med glimpse() giver summary() centralmål og spredningsmål for hver variabel, hvilket ses i følgende eksempel:

summary(rhc)
Udskrift af summary(rhc) med minimum, kvartiler, median, middelværdi og maksimum for hver variabel

Funktionen summary() kan anvendes på en enkelt kolonne ved at referere til den med $ efter navnet på vores data frame:

summary(rhc$age)
Udskrift af summary(rhc$age): minimum 18,04, median 64,05, middelværdi 61,38 og maksimum 101,85 år

For at se værdierne i en enkelt kolonne bruges samme metode som ovenfor. Kolonnens navn indledes med $, på følgende måde:

rhc$age
 [1]  70.25098  78.17896  46.09198  75.33197  67.90997  86.07794  54.96799  43.63898  18.04199  48.42398  34.44199  68.34796  74.70996  42.23700  81.97095  78.30499
  [17]  88.42200  69.00195  41.42899  67.50397  50.59000  62.68900  42.05298  23.11299  62.10797  39.82999  47.75598  36.70099  71.20099  95.53699  67.27997  73.49194
  [33]  71.49597  54.79300  36.13397  61.43997  55.97299  51.39999  54.31097  67.74298  59.90399  21.09200  94.07495  41.33899  80.38300  58.04199  32.07397  80.58295
  [49]  70.61200  80.18896  56.76898  85.29498  63.91498  78.08600  83.37000  61.86697  85.31995  42.92398  47.97498  58.03400  49.82898  69.19098  25.40999  68.40198
  [65]  63.54797  38.91599  77.32495  58.80099  66.32196  60.65399  66.89398  63.48297  25.51399  83.35895  42.28598  57.46997  76.43500  80.03796  49.52798  40.78000
  [81]  69.15295  68.70099  45.57397  59.29099  81.24597  72.81897  53.52197  39.73199  93.02399  54.08600  43.99500  64.11200  70.51599  87.13995  79.79199  46.58698
  [97]  87.70996  83.56195  86.17096  49.99899  30.56499  65.08099  63.88498  47.82498  41.83698  49.68698  57.09198  55.13797  44.31998  56.30899  75.12897  76.84900
 [113]  57.98999  69.40198  65.39600  79.93195  71.90997  77.19397  66.08398  20.58899  60.27100  54.08398  81.93597  36.18100  86.26996  74.68298  28.19399  86.14899
 [129]  80.60498  42.01498  34.11600  82.24799  78.70795  53.31400  71.98395  67.73700  80.45697  82.41998  88.17200  76.21399

Udvælgelse af kolonner til inspektion

Funktionerne i dplyr er uvurderlige til at udvælge og mutere kolonner. Her følger flere eksempler med forklaringer i kommentarer i koden:

## Inspicerer de første 3 kolonner, hema, renalhx og
## alle kolonner mellem transhx:trauma og trauma
rhc %>%
  select(1:3, hema, renalhx, transhx:trauma)
adld3p <int> age <dbl> alb1 <dbl> hema <chr> renalhx <int> transhx <int> trauma <chr>
0 70.25098 3.5000000 No 0 0 No
NA 78.17896 2.5996094 No 0 1 No
NA 46.09198 3.5000000 No 0 0 No
NA 75.33197 3.5000000 No 0 0 No
NA 67.90997 3.5000000 No 0 0 No
0 86.07794 3.0996094 No 0 0 No
NA 54.96799 3.5000000 No 0 0 No
NA 43.63898 2.6997070 No 0 1 No
NA 18.04199 3.0000000 Yes 0 0 No
NA 48.42398 2.5000000 No 0 0 No

Du kan tilføje en View() allersidst for at inspicere alle rådata, på følgende måde:

rhc %>%
  select(1:3, hema, renalhx, transhx:trauma) %>%
  View()

Når ovenstående kode køres, vises et vindue med rådata.

Du kan begrænse, hvilke patienter du inspicerer, ved at bruge yderligere funktioner i dplyr:

rhc %>%
  # Beholder kun patienter, der er ældre end 50 år og har card==Yes
  filter(age>50, card=="Yes") |>
  # Vælger variabler
  select(1:3, hema, renalhx, transhx:trauma) |>
  # Beholder de første 100 rækker
  slice(1:100) |>
  # Åbner vinduet
  View()

Når ovenstående kode køres, vises et vindue med rådata.