I nogle situationer kan man være specielt interesseret i
linjens værdi for bestemte værdier af den forklarende variabel
I eksemplet, vi har betragtet, med en ny måde at måle forureningsgraden i
vandprøver kan det være, at man vil oversætte en grænseværdi på
antallet af E.coli bakterier til en grænseværdi på GLUase aktiviteten.
Dette kan formuleres på den måde, at i modellen
vil vi gerne
sige noget om parameteren hvor er
en givet værdi af den forklarende variabel. Som skøn over linjens værdi bruges
På samme måde som i
Resultat 5.2.1
kan man indse, at
Som i Resultat 5.3.1 kan vi derfor lave test for værdien
af
og vi kan lave et 95%-konfidensinterval. Det sidste er på formen
Man omtaler ofte som en prædikteret værdi og intervallet som
et konfidensinterval for prædiktionen. Derudover taler man også om et
prædiktionsinterval,
som er
bredere end ovenstående konfidensinterval. Et 95%-prædiktionsinterval er
et interval, der vil indeholde en kommende observation med sandsynlighed
0.95. Hvis skal der laves et
interval, der indeholder med sandsynlighed 0.95.
Hertil benyttes, at Ud
fra dette kan vi konstruere en "-teststørrelse":
og lave prædiktionsintervallet som
I R kan konfidensintervallet og prædiktionsintervallet
beregnes med funktionen predict.
Input til predict er output fra kald af lm og
en såkaldt dataframe med de værdier af den forklarende
variabel
hvori vi ønsker at beregne linjens værdi.
Lad output fra lm være lmUD=lm(xt).
Så danner vi en dataframe med navnet nyData med kommandoen
nyData=data.frame(t=tNY)
hvor tNY er en
vektor med de nye værdier af Det er vigtig, at der bruges det samme
navn for den forklarende variabel (i vores tilfælde ) i kaldet til lm
og i konstruktionen af NyData.
Nu beregnes konfidensintervallet for linjens værdi i de nye punkter
med kommandoen
predict(lmUD,nyData,interval="confidence")
Output fra predict er en matrix med tre søjler
og et antal rækker, der svarer til længden af tNY.
Første søjle er skøn over linjens værdi, anden søjle er det nedre
endepunkt i konfidensintervallet, og tredje søjle er det øvre endepunkt. For at beregne prædiktionsintervallet skal man erstatte
"confidence" med "prediction" i kaldet til predict.
Eksempel 5.5.1.
(Forurening i vandprøver)
I Eksempel 5.1.1, omkring GLUase aktivitetens afhængighed af
mængden af E.coli bakterier, kan vi være interesseret i at kunne
skelne mellem badevand af udmærket kvalitet,
god kvalitet eller ringe kvalitet, svarende til
at mængden af E.coli bakterier er 250, 500 eller 1000 (cfu per 100 ml).
I det følgende kodevindue
beregnes konfidensinterval for linjens værdi i disse punkter, det vil sige
konfidensinterval for middelværdien af logaritmen til GLUase aktiviteten
for de tre niveuaer af E.coli bakterier (vær opmærksom på, at
søjleoverskrifterne, i det output I får her, er forskudt til venstre,
hvilket ikke er tilfældet,
når I laver beregningerne i jeres egen R-installation).
Hvorfor er konfidensintervallet i tilfældet med 250 bakterier
noget smallere end intervallet i tilfældet med 1000 bakterier ?
Lav prædiktionsintervaller i stedet for konfidensintervaller.
Hvorfor er disse intervaller meget bredere end konfidensintervallerne ?
Hvis du har fået en ny måling af GLUase aktiviteten, hvor
-værdien er 1.05, vil du så mene, det tyder på et E.coli bakterietal
på 250 eller på  ? Kunne det tænkes, at bakteritallet er
 ?
Med 250 bakterier ligger man ind mod midten af dataområdet i forhold til
1000 bakterier, hvor man ligger i yderkanten af dataområdet.
Formelmæssigt ses denne forskel gennem bidraget
til standard error for skønnet over
linjens værdi.
Skifter blot "confidence" ud med "prediction" i kaldet til
predict.
Intuitivt skal prædiktionsintervaller "stikke" 1 til 2 gange spredningen
længere ud end konfidensintervallerne, og da er forholdsvis stor,
bliver prædiktionsintervallerne væsentligt bredere end
konfidensintervallerne.
Værdien 1.05 ligger både i prædiktionsintervallet for
tilfældet 250 og i prædiktionsintervallet for tilfældet 500, og i
begge tilfælde lige langt fra en af grænserne i intervallet. Begge de to
muligheder er derfor lige gode. Dog ligger 1.05 langt uden for
prædiktionsintervallet i tilfældet med 1000 bakterier, hvorfor
det ikke er sandsynligt med så højt et bakterieantal.
I det følgende kodevindue beregnes konfidensintervallet for linjens
værdi i mange punkter og indtegnes som en kurve i figur med data.
Prøv at ændre "confidence" til "prediction" i ovenstående kørsel.
5.5.1 Kalibrering (invers regression)
Inden for kemi bruges lineære sammenhænge ofte til at lave et
"måleapperat", hvor værdien af den forklarende variabel bestemmes
ud fra respons (omtales ofte som "invers regression").
Når den lineære regressionsmodel etableres ud
fra data, taler man om at kalibrere målemetoden.
For eksempel kan man have lavet en række prøver med en kendt koncentration
af et stof og målt intensiteten af lys efter passage af prøven.
Typisk vil der være en lineær sammenhæng mellem logaritmen til
lysintensiteten og koncentrationen. Efterfølgende kan man for en
prøve med en ukendt koncentration måle lysintensiteten og lave
skøn over koncentrationen ud fra den etablerede lineære sammenhæng. I vores eksempel i dette afsnit med forurenede vandprøver ønsker vi,
efter at sammenhængen mellem GLUase og antal bakterier er etableret, at
bruge sammenhængen til ud fra en måling af GLUase at sige, hvad
antallet af bakterier er.Dette kan formuleres generelt på følgende vis.
Ud fra de indsamlede data har vi estimeret parametrene i modellen
For en ny værdi af den forklarende variabel betragtes
målinger fra modellen
Vi ønsker at lave inferens om
baseret på både og på
Ved beregninger af samme type som i forbindelse med
Resultat 5.3.1
kan man indse, at
hvor
Man kan derfor konstruere et 95%-konfidensinterval for
som de værdier af for hvilke
For at finde de relevante værdier af skal man løse en
andengradsligning. Beregningerne er vist i kodevinduet
nedenfor for data omkring forurening af vandprøver fra
Eksempel 5.1.1. Der laves først et konfidensinterval
for -værdien af antallet af E.coli bakterier
i tilfældet, hvor -værdien af GLUase aktiviteten er 1.05,
hvorefter dette omregnes til et konfidensinterval for
antallet af bakterier. Beregningerne laves på den måde, at der
først defineres en funktion inversReg i R,
hvorefter denne funktion kaldes. Funktionen inversReg
findes i filen Rfunktioner.txt omtalt under punktet
Egne funktioner i R i afsnit
1.2.
Kør koden og kommenter på resultatet. Prøv at ændre 1.05 i kaldet
til rep(1.05,4). Dette svarer til, at man har gentaget
målingen af GLUase 4 gange (og tilfældigvis har målt den samme
værdi alle fire gange). Kommenter også på dette resultat.
Kørsel af program viser, at antallet af E.coli bakterier ikke er særlig godt
bestemt ud fra en enkelt måling af GLUases aktiviteten og ved brug af
de data, vi har til rådighed. Konfidensintervallet er cirka fra 160 til
700. Hvis vi har fire gentagne målinger af GLUase aktiviteten for
den samme værdi af antallet af E.coli bakterier, får vi cirka
halveret længden af konfidensintervallet på en -skala. Den overordnede konklusion er, at godt nok er der en lineær sammenhæng
mellem GLUase aktiviteten og antallet af E.coli bakterier, men
der er behov for forbedring af målemetoderne for at kunne bruge
relationen i praksis til at vurdere antallet af bakterier
ud fra GLUases aktiviteten.