R appendix til slides
1 Data sæt
Alle datasæt er tilgængelige fra http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/.
1.1 Vitamin D
Data er beskrevet i detaljer i Andersen et al. (2005) ‘Teenage girls and elderly women living in northern Europe have low winter vitamin D status’, European Journal of Clinical Nutrition.
Variable:
- country (1=DK, 2=FI, 4=EI, 6=PO)
- vitd (nmol/L, serum Vitamin D level)
- age (years)
- bmi \(({\rm kilo/m}^2)\)
- sunexp (1=Avoid sun, 2=Sometimes in sun, 3=Prefer sun)
- vitdintake (Vitamin D intake, the amount of vitamin D contained in the consumed food)
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/vitamin.csv")
vit head(vit)
country vitd age bmi sunexp vitdintake
1 1 28.5 73.00 26.18 1 1.182
2 1 32.9 72.93 25.16 1 1.052
3 1 60.3 72.60 23.08 1 18.710
4 1 50.5 71.51 25.20 1 8.417
5 1 15.0 71.85 25.31 1 1.273
6 1 47.8 73.76 23.90 2 7.135
Vi kan lægge labels på de kategoriske variable, så det er lettere at huske kodningen:
$country <- factor( vit$country, levels=c(1,2,4,6),
vitlabels=c("DK", "SF", "EI", "PL"))
$sunexp <- factor( vit$sunexp, levels=1:3,
vitlabels=c("Avoid sun", "Sometimes in sun", "Prefer sun"))
head( vit )
country vitd age bmi sunexp vitdintake
1 DK 28.5 73.00 26.18 Avoid sun 1.182
2 DK 32.9 72.93 25.16 Avoid sun 1.052
3 DK 60.3 72.60 23.08 Avoid sun 18.710
4 DK 50.5 71.51 25.20 Avoid sun 8.417
5 DK 15.0 71.85 25.31 Avoid sun 1.273
6 DK 47.8 73.76 23.90 Sometimes in sun 7.135
Til senere brug laver vi lige en ny sol-variabel som angiver, om man dyrker sol (Sometimes+Prefer) eller ej (Avoid). Vi definerer den først som 0-1-variabel vha ifelse() og lægger derefter labels på:
$sol <- ifelse( vit$sunexp=='Avoid sun', 0, 1)
vit$sol <- factor( vit$sol, levels=0:1, labels=c('Nej','Ja'))
vithead(vit)
country vitd age bmi sunexp vitdintake sol
1 DK 28.5 73.00 26.18 Avoid sun 1.182 Nej
2 DK 32.9 72.93 25.16 Avoid sun 1.052 Nej
3 DK 60.3 72.60 23.08 Avoid sun 18.710 Nej
4 DK 50.5 71.51 25.20 Avoid sun 8.417 Nej
5 DK 15.0 71.85 25.31 Avoid sun 1.273 Nej
6 DK 47.8 73.76 23.90 Sometimes in sun 7.135 Ja
Vi arbejder i dele af slides med en gruppe kvinder af gangen og definerer derfor et datasæt for hvert land (bemærk at jeg ikke længere kan skrive f.eks. country==1
når jeg har lagt labels på):
<- subset(vit,country=='DK')
vitDK <- subset(vit,country=='SF')
vitSF <- subset(vit,country=='EI')
vitEI <- subset(vit,country=='PL') vitPL
1.2 Immunoglobulin
Her er kun én variabel med navn img
:
<- read.table("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/imm.csv", header=T)
imm head( imm )
img
1 0.1
2 0.1
3 0.1
4 0.2
5 0.2
6 0.2
1.3 Længdespring
Længespring mænd, kvalifikation OL 2012, bedste spring af 3. Vi skal kun bruge variablen distance
, som angiver længden:
<- read.csv('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/longjump.csv')
longjump head( longjump )
rank name country distance
1 1 Mauro Vinicius DA SILVA BRA 8.11
2 2 Marquise GOODWIN USA 8.11
3 3 Aleksandr MENKOV RUS 8.09
4 4 Greg RUTHERFORD GBR 8.08
5 5 Christopher TOMLINSON GBR 8.06
6 6 Michel TORNEUS SWE 8.03
1.4 Slagvolumen, parrede observationer
Data (fil med navn mf_sv.txt
) indeholder slagvolumen bestemt ved to forskellige metoder på hver patient:
mf
: Doppler ekkokardiografisv
: Cross-sectional ekkokardiografi
<- read.csv('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/mf_sv.txt', sep=' ')
ms head(ms,3)
mf sv
1 47 43
2 66 70
3 68 72
Skal også benyttes i såkaldt langt format i forbindelse med spaghettiplots (hvor mf
og sv
-målingerne er stablet ovenpå hinanden i en variabel med navn vol
og vi har tilføjet en metode
-variabel, som angiver om målingen er taget med mf
eller sv
). Data i langt format indlæses fra datafilen mf_sv_lang.csv
:
<- read.csv('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/mf_sv_lang.csv')
lang head(lang,3)
vol metode id
1 47 mf 1
2 66 mf 2
3 68 mf 3
1.5 Vietnam veteraner
Data er beskrevet i detaljer i Carroll et al.: Low cognitive ability in early adulthood is associated with reduced lung function in middle age: the Vietnam Experience Study, Thorax (2011)
Vi har et tilfældigt udsnit af data på 87 af de 4526 veteraner, som var en del US army mellem 1965 og 1971.
Variable:
smoke01
: 0 = Ikke- eller ex-ryger, 1 = Ryger.iq
: IQ målt ved start ansættelseFEV1
: (L, Forced Expiratory Volume in one second) målt i 1986
Data ligger i filer med navn viet
, og kan indlæses med:
<- read.csv('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/viet.csv')
viet head(viet)
smoke01 iq FEV1
1 0 86.40 3.71
2 0 119.83 5.16
3 1 122.06 3.95
4 1 110.17 3.85
5 1 99.77 4.63
6 1 102.74 3.94
1.6 VCF og blodsukker
Data (fil med navn vcf.txt) indeholder to variable målt på 23 diabetikere:
blodsukker
vcf
, der er sammentrækningsevne for venstre hjertekammer (velocity of circumferential shortening)
Data gemmes under navnet hjerte
<- read.table('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/vcf.txt', header = TRUE)
hjerte head(hjerte, 3)
blodsukker vcf
1 15.3 1.76
2 10.8 1.34
3 8.1 1.27
1.7 Refe og test
To forskellige metoder til bestemmelse af glucosekoncentration. Ref: R.G. Miller et.al. (eds): Biostatistics Casebook. Wiley, 1980.
Data (fil med navn refe_test
(.txt eller .sav)) indeholder to variable målt på 46 individer
refe
, farvetest der kan ’forurenes’ af urinsyretest
, enzymatisk test, mere specifikt for glucose.
<- read.csv( "http://publicifsv.sund.ku.dk/~lts/basal/Rdata/refe_test.txt", sep=" ") refetest
1.8 Lille SundBy
Data med navn sundby_lille
(.txt eller .sav).
er et subdatasæt på 100 tilfældige individer fra SundBy-materialet. Her er tre variable
gender
kodet “male” og “female”vaegt
i kghoejde
i meter
<- read.table("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/sundby_lille.txt", header = T, na.strings = c("."))
su
$gender <- factor(su$gender)
su
# Vi arbejder med log-transformeret vægt og højde
$log10vaegt <- log10(su$vaegt)
su$log10hoejde <- log10(su$hoejde) su
1.9 AMH og P-piller
Data (fil med navn ppills
, .txt eller .sav) indeholder to variable målt på 732 danske kvinder:
amh
ppiller
, P-pille bruger 0/1 (nej/ja)
<- read.table("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/ppills.txt", header = T)
pill $logamh <- log10(pill$amh)
pill$ppiller <- factor(pill$ppiller) pill
1.10 Fødselsvægt (Secher)
Data benyttes i uge 6, multipel regression.
Data (fil med navn secher.txt) indeholder 4 variable målt ved 107 ultralydsscanninger:
vaegt
fødselsvægtbpd
hoveddiameterad
maveomfangetnr
observationsnummeret
<- read.csv("http://staff.pubhealth.ku.dk/~sr/BasicStatistics/datasets/secher.txt",sep="")
secher
head(secher)
vaegt bpd ad nr
1 2350 88 92 1
2 2450 91 98 2
3 3300 94 110 3
4 1800 84 89 4
5 2900 89 97 5
6 3500 100 110 6
1.11 Fedme
Data benyttes i uge 6, multipel regression. Datasættet (filer med navn fedme
) indeholder følgende målinger på 197 børn:
vaegt
vægt i 1-års alderhoejde
højdde i 1-års alderfedme
i skolealderen - skal normeres således at vi regner påfedmescore=fedme/0.2859382
(0.2859382 er SD affedme
-variablen)
Data kan indlæses fra link med følgende kode (hvor der samtidigt defineres et par nye variable):
1.12 Lungefunktion og cystisk fibrose
Data benyttes i uge 6, multipel regression.
Studie af 25 patienter, hvor outcome er pemax
(et udtryk
for lungefunktion) og 9 kovariater: age
, sex
, height
, weight
, bmp
, fev1
, rv
, frc
og tlc
. Se evt. O’Neill et. al. (Am Rev Respir Dis, 1983).
Data (fil med navn pemax.txt
) kan indlæses fra link med:
<- read.csv("http://staff.pubhealth.ku.dk/~sr/BasicStatistics/datasets/pemax.txt", sep="")
pemax
names(pemax)
[1] "nr" "age" "sex" "height" "weight" "bmp" "fev1" "rv"
[9] "frc" "tlc" "pemax"
1.13 Biokemisk iltforbrug (BOC)
Datafil med navn boc
, benyttes i uge 7 (den generelle lineære model).
Iltsvind i lukkede flasker (Biochemical Oxygen Consumption, BOC), som funktion af antal dage. Datasættet indeholder 24 målinger og to variable:
days
boc
, iltsvind (BOC)
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/boc.txt", sep="") boc
1.14 Serum IGF
Datafil med navn juul2
, benyttes i uge 7 (den generelle lineære model). Datasættet indeholder følgende variable målt på 1340 individer
age
alder i årheight
højde i cmmenarche
sexnr
køn (1=male, 2=female)sigf1
Serum IGF-1tanner
, Tanner’s pubertetsklassifikation (1–5)testvol
weight
vægt i kg
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/juul2.txt", sep="", na.strings=".")
juul
# Kvadratrodstransformeret sigf1
$ssigf1 <- sqrt(juul$sigf1) juul
1.15 RES-systemet i leveren
Datafil med navn kw
benyttes i uge 7, den generelle lineære model. Eksempel på ikke-lineær sammenhæng.
Indeholder to variable målt på 26 individer:
koncentration
, koncentration af radioaktiv tracertid
, tid for målingen afkoncentration
efter bolus injektion ved tid 0
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/kw.txt", sep="") kw
1.16 Blodtryk og fedme
Datafil med navn bp
benyttes i uge 7, den generelle lineære model.
Datasættet indeholder 3 variable målt på 102 individer
sexnr
køn (1=male, 2=female)obese
fedmegrad, vægt/idealvægtbp
systolisk blodtryk
<- read.table("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/bp.txt", header = T, na.strings = c(".")) bp
1.17 Prostatakræft
Datafil med navn prostate
benyttes i uge 8, logistisk regression.
Datasættet indeholder 6 variable målt på 380 mænd med prostatakræft. Formålet med undersøgelsen er at bestemme hvordan risikoen for at tumor er trængt igennem prostatakapslen afhænger af forklarende variable og hvorvidt disse variable kan benyttes til at prædiktere gennemtrængning. Variablene er
gennemtraengning01
tumor har penetreret kapslen (0=nej, 1=ja)involvering
kapsel involvering ved rektal eksploration (0=ej involvering, 1=involvering)knude
knudes placering på lap (“ingen”,“venstre”,“hoejre”,“begge”)psa
Prostataspecifikt Antigen i Plasma (PSA, ng/ml)alder65
Under / over 65 år (“Under”/“Over”)gleason
Gleason score, 0-10.
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/prostate.csv") prostate
Data er lånt fra Hosmer & Lemeshow: Applied Logistic Regression, 2nd ed.
1.18 Lungecancer
Datafil med navn veteran.csv
benyttes i uge 9 om overlevelsesanalyse.
Datasættet indeholder 9 variable observeret for 137 mænd. Af de 9 variable kommer vi til at benytte følgende 5:
time
Tid fra randomisering til død/censureringstatus
Angiver omtime
er observation af død eller censurering (1 = død, 0 = censurering)treat
Behandling (0 = standardbehandling, 1 = ny behandling)celltype
Type af lungecancer (4 forskellige typer)karno
Kvantitativ Karnofsky score
<- read.csv('http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/veteran.csv') d
1.19 Calcium tilskud
Datafil med navn calcium_lang
benyttes i uge 10 om korrelerede data.
Datasættet indeholder 4 variable observeret for 112 piger. Variablene er følgende:
Obs
fortløbende observationsnummer / række i datasættetgrp
calciumtilskud (“C”) eller placebo (“P”)girl
fortløbende identifikationsnummer for hver pigevisit
besøg, nummereret 1-5bmd
angiver “Bone Mineral Density”
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/calcium_lang.txt", sep="")
calcium head(calcium)
Obs grp girl visit bmd
1 1 C 101 1 0.815
2 2 C 101 2 0.875
3 3 C 101 3 0.911
4 4 C 101 4 0.952
5 5 C 101 5 0.970
6 6 P 102 1 0.813
1.20 Kaniner
Datafil med navn kanin
benyttes i uge 10 om korrelerede data.
Datasættet indeholder observationer af hævelse efter vaccination af 6 kaniner, hvor hver kanin er vaccineret 6 gange. Datafilen er i såkaldt bredt format, dvs hver linje indholder information for en kanin.
Variable:
kanin
idnummerra
-f
indeholder målinger af hævelsen efter vaccination 1-6
Hele datasættet:
<- read.csv("http://publicifsv.sund.ku.dk/~sr/BasicStatistics/datasets/kanin.txt", sep="") kanin
kanin a b c d e f
1 1 7.9 6.1 7.5 6.9 6.7 7.3
2 2 8.7 8.2 8.1 8.5 9.9 8.3
3 3 7.4 7.7 6.0 6.8 7.3 7.3
4 4 7.4 7.1 6.4 7.7 6.4 5.8
5 5 7.1 8.1 6.2 8.5 6.4 6.4
6 6 8.2 5.9 7.5 8.5 7.3 7.7