En Introduktion til SAS. Kapitel 5. Inge Henningsen Afdeling for Statistik og Operationsanalyse Københavns Universitet Marts 2005 6. udgave
Kapitel 5 T-test og PROC UNIVARIATE 5.1 Indledning Dette kapitel viser, hvorledes T-test kan udføres ved hjælp af SAS. Det gennemgås, hvorledes programmer skal skrives og udskrifterne fortolkes. Desuden jævnføres de i udskrifterne beregnede størrelser med de fra noterne kendte. Det antages, at betingelserne for at udføre T-test er opfyldte, altså at observationerne er normalfordelte med samme varians i alle grupper. Dette kan undersøges ved hjælp af PROC UNIVARIATE, der beregner summariske mål for fordelinger og tegner histogrammer og QQ-plot. Det antages, at data foreligger som et SAS-datasæt. I eksemplerne bruges SAS-datasættet cdj, der er beskrevet sidst i kapitlet. 5.2 PROC UNIVARIATE Dette afsnit knytter sig til IH kapitel 9 om beskrivende statistik. Vi antager, at vi har et SAS-datasæt med to variable. Den ene, X, angiver for hver observation det målingsresultat, der ønskes analyseret. Den anden er en klassevariabel, R, med endeligt mange værdier, der angiver hvilken gruppe (eller klasse) observationen tilhører.
5.2 PROC UNIVARIATE 55 PROC UNIVARIATE I det første eksempel vises, hvorledes man kan bruge PROC UNIVARI- ATE til at nde summariske mål i en fordeling. Betegnelserne er for en stor del de samme som i PROC MEANS, men PROC UNIVARIATE nder (bl. a.) også fraktiler i fordelingen. Denitioner og udskriftstørrelser i PROC UNIVARIATE. Det antages, at vi har N ikke-manglende observationer og sætter x (1) = den mindste observation x (N) = den største observation x = 1 Ni=1 x N i. s 2 = 1 Ni=1 (x N 1 i x) 2. Med disse betegnelser fås følgende udskriftstørrelser i PROC UNIVARIATE: N = antal observationer med ikke-manglende værdier. MEAN = x = gennemsnit eller empirisk middelværdi. STD Deviation = s = empirisk spredning eller empirisk standardafvigelse. Sum Observations = N i=1 x i. Variance =s 2 = empirisk varians. Uncorrected SS = N i=1 x 2 i Corrected SS = N i=1 (x i x) 2 = kvadratafvigelsessum. Coeff Variation = 100s/ x = variationskoecient. Std Error Mean = s/ N = empirisk spredning for gennemsnittet. Median=50%-fraktil Q3 = 75%-fraktil Q1 = 25%-fraktil Range= x (N) - x (1). Interquartile Range = Q3-Q1. Students t = N x/s = T-teststørrelse for hypotesen E(X) = 0, hvis observationerne er normalfordelte. PR > t = testsandsynlighed for T-testet.
56 T-test og PROC UNIVARIATE PROGRAM 5.1: DATA temp; SET cdj; IF type=2; PROC UNIVARIATE; VAR lav-glyc; TITLE 'CDJ-data. Udskrift fra PROC UNIVARIATE'; FOOTNOTE 'Summariske mål for lav-glyc i gruppe 2'; RUN; UDSKRIFT 5.1: CDJ-data. Udskrift fra PROC UNIVARIATE The UNIVARIATE Procedure Variable: Lav-glyc Moments N 18 Sum Weights 18 Mean 45.6944444 Sum Observations 822.5 Std Deviation 3.15417039 Variance 9.94879085 Skewness 0.18700929 Kurtosis -0.7847903 Uncorrected SS 37752.81 Corrected SS 169.129444 Coeff Variation 6.90274371 Std Error Mean 0.74344509 Basic Statistical Measures Location Variability Mean 45.69444 Std Deviation 3.15417 Median 45.90000 Variance 9.94879 Mode. Range 11.10000 Interquartile Range 4.80000 Quantiles (Definition 5) Quantile Estimate 100% Max 51.5 99% 51.5 95% 51.5 90% 50.7 75% Q3 47.7 50% Median 45.9 25% Q1 42.9 10% 42.0 5% 40.4 1% 40.4 0% Min 40.4
5.2 PROC UNIVARIATE 57 Tests for Location: Mu0=0 Test -Statistic- -----p Value------ Student's t t 61.46311 Pr > t <.0001 Sign M 9 Pr >= M <.0001 Signed Rank S 85.5 Pr >= S <.0001 Extreme Observations ----Lowest---- ----Highest--- Value Obs Value Obs 40.4 12 47.7 13 42.0 14 48.9 4 42.3 11 49.0 1 42.4 7 50.7 16 42.9 15 51.5 5 Summariske mål for lav-glyc i gruppe 2 I det næste eksempel vises, hvorledes man kan bruge PROC UNIVARI- ATE til at tegne histogram for et datasæt og sammenligne dette med tæthed for normal fordeling. Programmet giver samtidig numeriske test for normalitet af data. Hvis man i stedet ønsker at indtegne tætheden for en lognormal-fordeling erstattes NORMAL i programmet med LOG- NORMAL. Figuren ndes i det særskilte bilag: Figurer til Introduktion til SAS kapitel 5. PROGRAM 5.2: UDSKRIFT 5.2: GOPTIONS HSIZE=7 VSIZE=7 FTEXT=swiss; PROC UNIVARIATE NOPRINT DATA=cdj; VAR lav-glyc; HISTOGRAM lav-glyc/normal; TITLE 'CDJ-data. Figur med PROC UNIVARIATE'; FOOTNOTE 'Histogram og indtegnet normalfordeling med estimerede parametre'; RUN; QUIT; CDJ-data. Figur med PROC UNIVARIATE The UNIVARIATE Procedure Fitted Distribution for Lav-glyc Parameters for Normal Distribution Parameter Symbol Estimate Mean Mu 45.69444
58 T-test og PROC UNIVARIATE Std Dev Sigma 3.15417 Goodness-of-Fit Tests for Normal Distribution Test ---Statistic---- -----p Value----- Kolmogorov-Smirnov D 0.11881468 Pr > D >0.150 Cramer-von Mises W-Sq 0.02757938 Pr > W-Sq >0.250 Anderson-Darling A-Sq 0.20059927 Pr > A-Sq >0.250 Quantiles for Normal Distribution ------Quantile------ Percent Observed Estimated 1.0 40.4000 38.3567 5.0 40.4000 40.5063 10.0 42.0000 41.6522 25.0 42.9000 43.5670 50.0 45.9000 45.6944 75.0 47.7000 47.8219 90.0 50.7000 49.7367 95.0 51.5000 50.8826 99.0 51.5000 53.0321 Histogram og indtegnet normalfordeling med estimerede parametre. I det næste eksempel vises, hvorledes man kan bruge PROC UNIVARI- ATE til at tegne QQ-plot for et datasæt. I et QQ-plot tegnes fraktiler fra normalfordeling med de estimerede parametre ud af x-aksen. På y-aksen angives de empiriske fraktiler. Hvis data er normalfordelt skal punkterne ligger omkring en ret linie med hældning 1. Hvis man i stedet ønsker at tegne QQ-plot for en lognormal-fordeling erstattes NORMAL i programmet med LOGNORMAL.. Figuren ndes i det særskilte bilag: Figurer til Introduktion til SAS kapitel 5. PROGRAM 5.3: GOPTIONS HSIZE=7 VSIZE=7 FTEXT=swiss; PROC UNIVARIATE NOPRINT DATA=cdj; VAR lav-glyc; QQPLOT/NORMAL(MU=est SIGMA=est); TITLE 'CDJ-data. Figur med PROC UNIVARIATE'; FOOTNOTE 'QQ-plot. x-akse er fraktiler fra normalfordeling med estimerede parametre'; RUN; QUIT;
5.3 T-test 59 5.3 T-test Dette afsnit knytter sig til IH kapitel 11 om T-test. Vi antager, at vi har et SAS-datasæt med to variable. Den ene, X, angiver for hver observation det målingsresultat, der ønskes analyseret. Den anden er en klassevariabel, R, med endeligt mange værdier, der angiver hvilken gruppe (eller klasse) observationen tilhører. I IH kapitel 11.3 antager R kun en værdi og i IH kapitel 11.4 antager den to værdier. Data X og R er SAS-variable i SAS-datasæt med n observationer. X R numerisk variabel klassevariabel med endeligt mange værdier r=1,...,k En-stikprøve T-test X 1, X 2,..., X n er uafhængige, identisk normalfordelte stokastiske variable med ukendt middelværdi µ og ukendte varians σ 2. Sammen med modellen betragter vi hypotesen H : µ = µ 0, hvor µ 0 er et kendt tal. Det følgende eksempel vises, hvorledes man kan udføre et T-test på niveau 5% (ALPHA=0.05) for hypotesen om at variablen 'lav-glyc' for type 2 har middelværdi 46 (H0=46), idet observationerne antages være uafhængige og stamme fra samme normalfordeling. PROGRAM 5.4: DATA temp; SET cdj; IF type=2; PROC TTEST H0=46 ALPHA=0.05; VAR lav-glyc; TITLE 'CDJ-data. Eksempel på t-test'; FOOTNOTE 'T-test på 5%-niveau for test af middelværdi=46 for lav-glyc i gruppe 2'; RUN;
60 T-test og PROC UNIVARIATE UDSKRIFT 5.4 CDJ-data. Eksempel på t-test The TTEST Procedure Statistics Lower CL Upper CL Lower CL Upper CL Variable N Mean Mean Mean Std Dev Std Dev Std Dev Std Err Lav-glyc 18 44.126 45.694 47.263 2.3669 3.1542 4.7286 0.7434 T-Tests Variable DF t Value Pr > t Lav-glyc 17-0.41 0.6862 T-test på 5%-niveau for test af middelværdi=46 for lav-glyc i gruppe 2 I udskriften er brugt følgende denitioner og udskriftstørrelser i PROC TTEST: Det antages, at vi har N ikke-manglende observationer, og vi benytter følgende denitioner x = 1 Ni=1 x N i. s 2 = 1 Ni=1 (x N 1 i x) 2. t α,f = α-fraktilen i T-fordeling med f frihedsgrader. χ 2 α,f = α-fraktilen i χ 2 -fordeling med f frihedsgrader. Med disse denitioner fås følgende udskriftstørrelser i PROC TTEST: N = antal observationer med ikke-manglende værdier. MEAN = x = gennemsnit eller empirisk middelværdi. Upper CL Mean= x + t 1 α 2,N 1 s/ N= øvre α kondensgrænse for middelværdien. Lower CL Mean= x + tα 2,N 1 s/ N= nedre α kondensgrænse for middelværdien. STD Deviation = s = empirisk spredning eller empirisk standardafvigelse. Upper CL Std Deviation=s N 1 χ 2 α/2,n 1 =øvre α kondensgrænse for spredningen. Lower CL Std Deviation=s N 1 χ 2 1 α/2,n 1 =nedre α kondensgrænse for spredningen.
5.3 T-test 61 Std Err = s/ N = empirisk spredning for gennemsnittet. t value = N x/s = T-teststørrelse for hypotesen E(X) = µ 0, hvis observationerne er normalfordelte. Pr > t = testsandsynlighed for T-testet. To-stikprøve T-test I IH kapitel 11.4 har vi (X rs ), r = 1, 2, s = 1,..., n r, hvor n r = antal observationer med R=r. Her er X'erne uafhængige normalfordelte stokastiske variable med samme ukendte middelværdi µ r for R=r og samme ukendte varians σ 2. Sammen med modellen betragter vi hypotesen H : µ 1 = µ 2 = µ. I det næste eksempel vises, hvorledes man kan udføre et T-test på niveau 5% for hypotesen om at variablen 'lav-glyc' for type 1 og type 2 i datasættet cdj har samme middelværdi, idet observationerne antages være uafhængige og stamme fra hver sin normalfordeling. Programmet udfører også test for identitet af varianserne i de to fordelinger. Program 5.5: DATA temp; SET cdj; IF type le 2; PROC TTEST ALPHA=0.05; VAR lav-glyc; CLASS type; TITLE 'CDJ-data.Sammenligning af type 1 og type 2'; RUN; UDSKRIFT 5.5: CDJ-data.Sammenligning af type 1 og type 2 The TTEST Procedure Statistics Lower CL Upper CL Lower CL Upper CL Variable type N Mean Mean Mean Std Dev Std Dev Std Dev Std Err Lav-glyc 1 6 36.53 42.867 49.203 3.769 6.0381 14.809 2.465 Lav-glyc 2 18 44.126 45.694 47.263 2.3669 3.1542 4.7286 0.7434 Lav-glyc Diff (1-2) -6.735-2.828 1.0795 3.091 3.9967 5.6568 1.8841
62 T-test og PROC UNIVARIATE T-Tests Variable Method Variances DF t Value Pr > t Lav-glyc Pooled Equal 22-1.50 0.1476 Lav-glyc Satterthwaite Unequal 5.94-1.10 0.3146 Equality of Variances Variable Method Num DF Den DF F Value Pr > F Lav-glyc Folded F 5 17 3.66 0.0394 T-test på 5%-niveau for test af middelværdi=46 for lav-glyc i gruppe 2 Parret T-test Det næste eksempel knytter sig til IH kapitel 11.3 og viser, hvorledes man kan udføre et parvis T-test på niveau 5% for hypotesen om at dierensen mellem to variable, der her beskriver længden af hhv forben og bagben for 10 dyr, har middelværdi 0. Dierenserne antages være uafhængige og stamme fra samme normalfordeling. I udskriften bruges de samme betegnelser som i eksempel 5.4. PROGRAM 5.6 DATA ben; INPUT bagben forben; CARDS; 142 138 140 136 144 147 144 139 142 143 146 141 149 143 150 145 142 136 148 146 ; PROC TTEST ALPHA=0.05; PAIRED bagben*forben; TITLE 'Parret T-test'; RUN;
5.3 T-test 63 UDSKRIFT 5.6 The TTEST Procedure Statistics Lower CL Upper CL Lower CL Upper CL Difference N Mean Mean Mean Std Dev Std Dev Std Dev Std Err bagben - forben 10 1.1132 3.3 5.4868 2.1026 3.0569 5.5807 0.9667 T-Tests Difference DF t Value Pr > t bagben - forben 9 3.41 0.0077 Bilag: Data til kapitel 5 I eksemplerne benyttes nedenstående datasæt, der er hentet fra Collinge et al, Nature vol 383, 24. oktober 1996. Det angiver andel lavmolekylær hhv andel højmokylær masse for prøver fra 4 typer proteiner. PROGRAM: DATA cdj; INPUT type hoj-glyc lav-glyc; CARDS; 1 18.2 47.3 1 20.4 49.4 1 25.0 38.1 1 31.7 37.2 1 32.1 36.9 1 29.2 48.3 2 21.2 49.0 2 22.5 46.2 2 22.9 47.1 2 23.8 48.9 2 24.3 51.5 2 24.6 44.2 2 24.1 42.4 2 25.9 46.9 2 25.4 45.0
64 T-test og PROC UNIVARIATE 2 25.2 43.2 2 25.1 42.3 2 26.7 40.4 2 26.0 47.7 2 28.2 42.0 2 29.1 42.9 2 33.8 50.7 2 29.4 45.6 2 29.3 46.5 3 25.6 40.5 3 28.8 46.6 3 30.2 44.2 3 32.3 46.2 4 43.7 45.0 4 44.2 47.9 4 47.0 44.3 4 47.1 46.7 4 48.4 43.4 4 49.5 33.1 4 50.7 35.5 4 51.2 37.2 4 53.4 43.4 ;