SAS eksempler til MPAS.

Læs fil ved at (venstre-) klikke på den.  For at downloade højreklik og vælg "Save link as". Bemærk: Tekstfiler har navne af formen *.TXT eller *.HTML (altså andre navne end dem der står), for at tvinge NetScape til at håndtere dem korrekt. Hvis man vil genbruge de viste SAS-programmer eller dele af dem kan man lettest bruge "copy" (ctrl C) og "paste"  (ctrl V) til at flytte dem fra NetScape (eller en anden browser) til SAS's programeditor.



PRG1.
Programmet indlæser data til opgave 1. Datafilens navn skal naturligvis ændres, hvis man vil bruge programmet selv. MAALING transformeres til den binomialfordelte respons, svarende til den (fiktive) antagelse at netop 125 personer har set hver kamp. Så estimeres en "logistisk regressionsmodel med overspredning" - eller en model, hvor observationerne MAALING har samme middelværdi som i en logistisk model, og hvor variansen er proportional med binomialfordelingsvariansen. De fittede værdier gemmes, og det hele udskrives. Et plot af observerede mod fittede værdier (eller rettere: estimerede sandsynligheder) dannes. Bemærk at modellen i sig selv er ret irrelevant, det hele skal opfattes som et regneeksempel.

 Programmet PRG1.SAS
 Log filen  PRG1.LOG
 Outputfilen  PRG1.LST
 Output fra  PROC GPLOT

Kommentar: Jeg har husket forkert, det jeg fik at vide var at man har spurgt indtil man havde svar fra 150-200 personer som havde set den pågældende kamp. Det betyder at den skønnede fælles antalsparamter, som i programmet er sat til 125, snarere burde være sat til 175. Det gør nu ingen forskel for resultatet, p.g.a. overspredningsparameteren. Selve estimaterne for regressionsparametrene bliver de samme (de er nemlig i forvejen de samme som i en logistisk regressionsmodel uden overspredning), og skalaparameteren ændrer sig så standardafvigelser m.v. bliver de samme som før.

Kommentarer til output fra PROC GENMOD: I analysen indgår 195 observationer (de resterende 22 er udgået fordi der forekom manglende værdier). Antallet af frihedsgrader for "deviancen" (-2logQ for test mod den fulde model) bliver så 195-(1+1+1+1)=191. Denne likelihood ratio teststørrelse på  1966.3615 og den tilsvarende Pearson størrelse 1910.5521 er angivet i output. Da de er alt for store til at kunne stamme fra en chi-i-anden fordeling med 191 frihedsgrader, må vi konkludere at der er overspredning. Størrelserne "Scaled Deviance" og "Scaled Pearson X2" forekommer ret overflødige (men det er i øvrigt nemt at gætte hvordan de er regnet ud).

Vi må altså bruge en "logistisk model med overspredning", eller en model hvor observationerne følger en fordeling (det kunne for eksempel være en normalfordeling) med samme middelværdi som i den logistiske regressionsmodel, og med en varians der også er den samme på nær en proportionalitetsfaktor, som kaldes (kvadratet på) overspredningsparameteren. Ved at angive option scale=p til MODEL specifikationen i PROC GENMOD har vi sagt at der ønskes taget højde for overspredning, og at overspredningsparameteren skal estimeres ved kvadratroden af Pearsons chi-i-anden størrelse divideret med sit frihedsgradsantal (logisk, da vi i en model uden overspredning ville forvente at denne størrelse ligger tæt på 1, jvf. i øvrigt hvordan standardafvigelsen estimeres i en almindelig vægtet regression). Overspredningsparameterens kvadrat estimeres altså i dette tilfælde ved 1910.5521/191 = 10.003. Kvadratroden af dette estimat, 3.1627, genfinder man i sidste linie i listen af parameterestimater.

Korrektionen for overspredning går (lidt primitiv) ud på, at alle standardafvigelser for parameterestimater (bortset altså fra "Scale" i sidste linie) er fremkommet ved at de tilsvarende størrelser i en logistisk regressionsmodel er ganget op med den estimerede skalaparameter 3.1627, og konfidensgrænserne (svarende til de sædvanlige +/- 1.96 s.d.) er tilsvarende korrigeret. De tilsvarende tests for "parameter=0" er baseret på chi-i-anden fordelinger (i dette tilfælde alle med 1 frihedsgrad). Det ville - i hvert fald i normalfordelingsfortolkningen - være lidt mere korrekt at benytte F-fordelingen med (1,191) frihedsgrader, men da 191 er et stort tal gør det næsten ingen forskel her.

Vi minder om parameterestimaternes fortolkning ved hjælp af et eksempel: For en observation hørende til en fodboldkamp og et produkt, der blev annonceret på en fast bandereklame der var på skærmen i 100 sekunder, kan sandsynligheden for at en tilfældig person kan huske den pågældende reklame estimeres ved

                                               exp(-1.1675+0.0002*100+0.0994-0.6887)
                                           ----------------------------------------------------------    =   0.1497
                                              1+exp(-1.1675+0.0002*100+0.0994-0.6887)


PRG2.
Dette program gør approksimativt det samme som PRG1, men ved anvendelse af den approksimation der er foreslået i notat 2. Programmet vil blive gennemgået udførligt ved forelæsningerne.

 Programmet PRG2.SAS
 Log filen  PRG2.LOG
 Outputfilen  PRG2.LST
 Output fra  PROC GPLOT

Kommentarer til PROC GLM kommandoen i PRG2.SAS: Specifikationen WEIGHT W bevirker, at der i stedet for en model med konstant varians estimeres en model hvor variansen er proportional med de inverse W'er. Terminologien skyldes, at den sædvanlige fortolkning af estimaterne som det sæt af koefficienter der minimerer kvadratsummen af observationernes afvigelser fra deres teoretiske middelværdier (mindste kvadraters metode), stadig er gyldig når denne kvadratsum modificeres således at det enkelte led ganges med ("vægtes med") den tilsvarende W-værdi.

Option SOLUTION i MODEL specifikationen bevirker at den sædvanlig liste af parameterestimater udskrives (det gør den ikke automatisk).

Kommentarer til output fra PROC GLM: Her er kun 194 observationer til rådighed, dvs. der er fjernet 23. De 22 er fjernet af samme grund som i PRG1 (manglende værdi af EXPOSURE), den sidste fordi den logit-transformerede MAALING ikke kan beregnes for MAALING=0. Ikke en eneste af de adspurgte kunne huske den rullende bandereklame for Dansk Naturgas der blev vist i fodboldkampen Danmark-Bosnien 8. juni 1997, formodentlig fordi den slet ikke blev vist på skærmen (hvilket ellers ikke altid er nogen hindring).

Oversigtsvariansanalyseskemaet forklarer næsten sig selv. Det F-test der udføres er for hypotesen om at hele modellen kan erstattes med den trivielle model der kun indeholder et konstantled.

R-Square (på dansk R-i-anden eller "modellens forklaringsgrad"), udregnet som 391.340764/1862.819315 = 0.210080, er den andel af den samlede (vægtede, i dette tilfælde) kvadratafvigelsessum omkring observationernes (vægtede) gennemsnit som forklares af modellen. Den kan sammenholdes med forholdet 3/193 mellem de tilsvarende frihedsgradsantal som, groft sagt, er den R-Square man ville forvente i en helt ubrugelig model. Coeff Var, variationskoefficienten, er sædvanligvis den estimerede standardafvigelse (2.782916) divideret med gennemsnittet (-1.391460) af alle observationerne, ganget med 100. Det er en størrelse hvis fortolkning er ret tvivlsom når der forekommer negative observationer. For en vægtet model er det svært at gætte hvad den betyder og hvordan den skal fortolkes, her er standardafvigelsen formodentlig erstattet med den estimerede skalaparameter, så en omskalering af W (der ellers i princippet ikke ville ændre modellen) ville muligvis ændre "variationskoefficienten". Root MSE er den estimerede skalaparameter (normalt: standardafvigelse), og "MAALING Mean" er det vægtede gennemsnit af observationerne (kan også fortolkes som estimatet for middelværdien i en vægtet model der kun indeholder et konstantled).

Nedenunder kommer så to - tilsyneladende næsten ens - variansanalysetabeller, der indeholder en linie for hvert led i modelformlen. I SAS jargonen betyder "Type I SS" og "Type III SS" følgende:

Type I kvadratsummer og de tilhørende F-tests er de tests man får for modelreduktioner, der fjerner modellens led et efter, startende med det sidste, idet tabellen skal læses nedefra. I dette tilfælde får vi altså

Modelreduktionen fra EXPOSURE+F_R+TYPE til  EXPOSURE+F_R afvises med en P-værdi på 0.0177.

De to andre tests, som herefter er irrelevante, går formelt ud på at

Modelreduktionen fra EXPOSURE+F_R til  EXPOSURE godkendes (P=0.8312)

Modelreduktionen fra EXPOSURE til <tom formel>, altså hypotesen hældning = 0 i den simple regressionsmodel, afvises med P<=0.0001.

De tests der foretages er i øvrigt (selv om det er svært at se lige i dette eksempel) ikke helt de samme som man normalt bruger ved successiv testning. Af grunde som fortaber sig i historien benytter SAS F-størrelser, hvor nævneren hele tiden er variansestimatet i den oprindelige model, hvor den ifølge almindelig successiv testtankegang burde være det opdaterede variansestimat i den sidst godkendte model. Hvis man vil have det korrekte test udført i SAS er man nødt til at kalde PROC GLM med den sidst godkendte model som "grundmodel". De F-teststørrelser SAS bruger er formelt OK, i den forstand at de under hypotesen er F-fordelte (med frihedsgradsantal som håndteres korrekt af SAS). Men de udnytter altså ikke al den information de kunne udnytte, og det kan forekomme temmelig ulogisk at man får forskellige tests for samme modelreduktion, afhængigt af hvor mange (insignifikante) led man har taget med i slutningen af den oprindelige modelformel.

Type III kvadratsummer og de tilhørende F-tests svarer til fjernelse af enkelte led fra hele den specificerede model. I dette tilfælde får vi altså (idet vi igen starter nedefra, selvom det i princippet er ligegyldigt nu)

Modelreduktionen fra EXPOSURE+F_R+TYPE til  EXPOSURE+F_R afvises med en P-værdi på 0.0177.

Modelreduktionen fra EXPOSURE+F_R+TYPE til  EXPOSURE+TYPE godkendes med en P-værdi på 0.8793.

Modelreduktionen fra EXPOSURE+F_R+TYPE til  F_R+TYPE godkendes med en P-værdi på 0.2344.

Bemærk at P-værdierne fra Type III SS skemaet går igen som P-værdier for T-tests for "parameter=0" i listen af parameterestimater (fordi alle modelreduktioner svarer til reduktion af modellens dimension med 1).

Konklusionen i dette (ikke særligt relevante) eksempel ville formodentlig være, at både F_R og EXPOSURE kan fjernes fra modellen så kun effekten af TYPE bliver tilbage. Men for at undersøge det må man kalde PROC GLM med en modelformel, hvor TYPE står som første led.