(Denne side kan man roligt springe over, hvis man ikke har en ambition om at blive verdensmester til at bruge R). R har ikke umiddelbart en indbygget funktion til beregning af risiko- og oddsratio. Men hvis man savner dette, er det nemt at definere sine egne funktioner, men ellers er det selvfølgelig også nemt at beregne RR og OR manuelt vha. R.

Lad os først lige definere en dataframe med tallene fra forrige side:

radonData<-data.frame("case"=c(162,104),"control"=c(401,333))

Man kan nu definere en ny funktion som vist her.

#Definer "minFunktion" der som parametre tager en dataframe, samt hvor mange cifre resultatet skal afrundes til
#Sidstnævnte sættes som default til 2
minFunktion <- function(d,round=2) {
    #læs først de 4 tal fra dataframen, så de bliver lidt nemmere at skrive i formlerne
    a11<-d[1,1]
    a21<-d[2,1]
    a12<-d[1,2]
    a22<-d[2,2]
    
    #print en passende tekst
    text<-"Bemærk: eksponeret er række 1, ikke-eksponeret er række2.\n Case er søjle 1, control er søjle 2\n"
    cat(text)
    
    #lav beregninger til RR
    n1<-a11+a12
    n2<-a21+a22
    p1<-a11/n1
    p2<-a21/n2
    SE<-sqrt(1/a11-1/n1+1/a21-1/n2)
    RR<-p1/p2
    
    #beregn konfidensinterval
    RRlci<-round(exp(log(RR)-1.96*SE),round)
    RRuci<-round(exp(log(RR)+1.96*SE),round)
    RD<-p1-p2
    
    #print RR samt konfidensinterval
    cat("RR = ",round(RR,round)," Konfidensinterval =",RRlci,"-",RRuci,"\n")

    #Beregninger til OR
    SE<-sqrt(1/a11+1/a21+1/a12+1/a22)
    OR<-a11*a22/(a12*a21)
    ORlci<-round(exp(log(OR)-1.96*SE),round)
    ORuci<-round(exp(log(OR)+1.96*SE),round)
    
    #Print OR samt konfidensinterval
    cat("OR = ",round(OR,round)," Konfidensinterval =",ORlci,"-",ORuci,"\n")
}

Når denne funktion en gang er defineret, kan man nu kalde den, på samme måde som man kalder alle andre funktioner i R:

minFunktion(radonData,3)
Bemærk: eksponeret er række 1, ikke-eksponeret er række2.
 Case er søjle 1, control er søjle 2
RR =  1.209  Konfidensinterval = 0.978 - 1.495 
OR =  1.294  Konfidensinterval = 0.972 - 1.722