testiranje multivari j at nog normalit eta
DESCRIPTION
R eferalni centar za analizu podataka i statistiku za potrebe akademske i istraživačke zajednice (RC APIS). Testiranje multivari j at nog normalit eta. %MULTNORM macro Autor: Nataša Tepić, NCVVO e-mail: [email protected]. Varijante programa za test multivarijatnog normaliteta. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/1.jpg)
Testiranje Testiranje multivarimultivarijjatatnognog normalitnormalitetaeta
%MULTNORM macro
Autor: Nataša Tepić, NCVVO
e-mail: [email protected]
Referalni centar za analizu podataka i statistiku za potrebe akademske i istraživačke zajednice (RC APIS)
![Page 2: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/2.jpg)
Varijante programa za Varijante programa za test multivarijatnog normalitetatest multivarijatnog normaliteta
1. SAS macroMardia-ev koeficijent asimetrije (skewness) i koeficijent zaobljenosti (kurtosis), Henze-Zirklerov test i 2 kvantil-kvantil graf
2. Khattree-Naikov programMardia-ev koeficijent asimetrije (skewness) i koeficijent zaobljenosti (kurtosis)
3. SAS/CALIS proceduraIzabrani koeficijenti koeficijenti zaobljenosti (kurtosis)
![Page 3: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/3.jpg)
UvodUvod
ako su podaci multivarijatno normalno distribuirani, onda su i sve varijable univarijatno normalno distribuirane
obrat ne vrijedi pa nije dovoljno testirati podatke samo za univarijatni normalitet
razvijene su različite metode za testiranje multivarijatnog normaliteta
![Page 4: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/4.jpg)
MardiaMardia-evi koeficijenti-evi koeficijenti
u Mardia “Applications of some measures of multivariate skewness and kurtosis in testing normality and robustness studies”, Sankhya B. 1974; 36, 115-128 predloženo je testiranje multivarijatnog normaliteta na temelju koeficijenta asimetrije (skewness) i koeficijenta zaobljenosti (kurtosis) dobivenih na uzorku za multivarijatno normalno distribuirane podatke, očekivana
vrijednost multivarijatnog koeficijenta asimetrije je
p(p+2)[(n+1)(p+1)-6] / (n+1)(n+3) očekivana vrijednost multivarijatnog koeficijenta zaobljenosti je
p(p+2)(n-1)/(n+1)
![Page 5: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/5.jpg)
Henze-ZirklerHenze-Zirklerov testov test
drugi test je Henze-Zirklerov; on se temelji na nenegativoj funkciji koja mjeri udaljenost između dvije funkcije distribucija
njime se procjenjuje udaljenost između funkcije distribucije podataka i funkcije multivarijatne normale distribucije
pojedinosti o ovom testu mogu se naći u SAS dokumentaciji (SAS/ETS User's Guide)
![Page 6: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/6.jpg)
Henze-ZirklerHenze-Zirklerov testov test
Henze-Zirklerov test izvodi se s %MULTNORM macro programom
hipoteza H0 o multivarijatnom normalitetu se odbacuje ako je p-vrijednost H-Z test-statistike manje od praga značajnosti
ako je p-vrijednost H-Z test-statistike veća od praga značajnosti , hipoteza se ne odbacuje te se na tom setu podataka smiju koristiti metode koje zahtijevaju multivarijatni normalitet
![Page 7: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/7.jpg)
Kvantil-kvantil grafKvantil-kvantil graf
grubi indikator multivarijatnog normaliteta je i 2 kvantil-kvantil graf (Q-Q plot)
na grafu su prikazane točke definirane kvadratima Mahalanobisovih udaljenosti pojedinih opservacija od vektora sredina i pripadnim 2 kvantilima
graf je osjetljiv na atipične vrijednosti (outlier)
![Page 8: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/8.jpg)
Univarijatni normalitetUnivarijatni normalitet
univarijatni normalitet testira se s:- Shapiro-Wilkovim W testom ili- Kolmogorov-Smirnovim testom (veliki uzorci)
pojedinosti o ovim testovima mogu se naći u SAS dokumentaciji (Tests for Normality u The UNIVARIATE Procedure)
Shapiro-Wilkov W test za univarijatni normalitet je vrlo snažan test sposoban otkriti odstupanje od univarijatnog normaliteta u uzorcima malih veličina
![Page 9: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/9.jpg)
%MULTNORM macro pro%MULTNORM macro programgram
Mardia-evi koeficijenti, Henze-Zirklerov test i 2 kvantil-kvantil graf
![Page 10: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/10.jpg)
%MULTNORM macro program služi za testiranje i grafičko prikazivanje multivarijatnog normaliteta
također testira i univarijatni normalitet za svaku varijablu
grafički prikaz je 2 kvantil-kvantil graf (Q-Q plot) koji prikazuje kvadrate Mahalanobisovih udaljenosti pojedinih opservacija
![Page 11: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/11.jpg)
ZahtjeviZahtjevi
za testiranje multivarijatnog normaliteta potreban je SAS/IML modul inačice 7 ili novije; umjesto tog modula može se rabiti i SAS/ETS modul inačice 8 ili novije
za grafički prikaz niske rezolucije potreban je SAS/STAT modul inačice 7 ili novije, a za grafički prikaz visoke rezolucije potreban je SAS/GRAPH modul
svi navedeni moduli dostupni su korisnicima SAS AAS Academic Analysis Suite
![Page 12: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/12.jpg)
UporabaUporaba
potrebno je samo pokrenuti program nakon njegove prilagodbe i odabira opcija
![Page 13: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/13.jpg)
ProgramProgram
%inc "<lokacija datoteke s %MULTNORM macro programom>";
%multnorm(data=biblioteka.datoteka-s-podacima, var=popis-varijabli-za-testiranje, plot=both|mult|uni|none , hires=yes|no)
![Page 14: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/14.jpg)
Prilagodba programaPrilagodba programa
u prvom retku programa u području s znakovima navoda (“) potrebno je navesti lokaciju gdje je spremljen %MULTNORM macro program
uz lokaciju datoteke %MULTNORM macro potrebno je navesti njegovo ime
![Page 15: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/15.jpg)
Prilagodba programaPrilagodba programa
u drugom retku programa potrebno je navesti ime datoteke i varijable koje se želi testirati ako se ne navede ime datoteke, testirat će se
zadnja stvorena datoteka imena varijabli koje će se testirati moraju biti
odvojene razmakom imena varijabli koje će se testirati ne smiju biti:
VAR1-VAR10, ABC--XYZ, _NUMERIC_
![Page 16: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/16.jpg)
Prilagodba programaPrilagodba programa
u drugom retku programa potrebno je odabrati opcije naredbi plot i hires
PLOT=BOTH | MULT | UNI | NONE
HIRES=YES | NO
![Page 17: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/17.jpg)
Prilagodba programaPrilagodba programa
PLOT=BOTH | MULT | UNI | NONE PLOT=MULT stvara multivarijatni Q-Q graf visoke ili
niske rezolucije koji prikazuje kvadrate Mahalanobisovih udaljenosti pojedinih opservacija od vektora sredina (mean vector)
PLOT=UNI stvara univarijatne histograme visoke rezolucije za svaku varijablu s dodatnim prikazom normalne distribucije i univarijatnim testom normaliteta uz opciju PLOT=UNI uvijek mora biti odabrana i opcija
HIRES=YES; ako je odabrana opcija HIRES=NO neće doći do stvaranja univarijatnog prikaza
![Page 18: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/18.jpg)
Prilagodba programaPrilagodba programa
PLOT=BOTH | MULT | UNI | NONE PLOT=BOTH (“defaulta” opcija) stvara multivarijatni
Q-Q graf i univarijatne histograme PLOT=NONE izostavlja sve grafičke prikaze i
univarijatne testove normaliteta; odabir opcije HIRES= nije bitan uz ovu opciju naredbe PLOT=
![Page 19: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/19.jpg)
Prilagodba programaPrilagodba programa
HIRES=YES | NO HIRES=YES (“defaulta” opcija) grafički prikazi su
visoke rezolucije prije pokretanja programa potrebno je odabrati
grafičke uređaje (graphics device) s naredbom GOPTIONS DEVICE= kao i sve druge željene grafičke opcije koje su potrebne za stvaranje željenog grafičkog prikaza visoke rezolucije
![Page 20: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/20.jpg)
Prilagodba programaPrilagodba programa
HIRES=YES | NO HIRES=NO grafički multivarijatni prikaz je niske
rezolucije univarijatni prikazi nisu mogući s opcijom
HIRES=NO
![Page 21: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/21.jpg)
Primjer programaPrimjer programa
%inc "C:\macro\multnormmacro.sas";
%multnorm(data=obrada.cork, var=n e s w, plot=mult, hires=no)
ovaj program će osim multivarijatnog i univarijatnog testa normaliteta (plot=mult) stvoriti grafički prikaz multivarijatnog Q-Q plota niske rezolucije (hires=no)
![Page 22: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/22.jpg)
RezultatRezultat
MULTNORM macro: Univariate and Multivariate Normality Tests
The MODEL Procedure
Normality Test Equation Test Statistic Value Prob
n Shapiro-Wilk W 0.91 0.0167 e Shapiro-Wilk W 0.90 0.0116 s Shapiro-Wilk W 0.89 0.0067 w Shapiro-Wilk W 0.94 0.1093 System Mardia Skewness 24.13 0.2369 Mardia Kurtosis -0.40 0.6904 Henze-Zirkler T 2.29 0.0222
univarijatni test normaliteta
![Page 23: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/23.jpg)
RezultatRezultat
MULTNORM macro: Univariate and Multivariate Normality Tests
The MODEL Procedure
Normality Test Equation Test Statistic Value Prob
n Shapiro-Wilk W 0.91 0.0167 e Shapiro-Wilk W 0.90 0.0116 s Shapiro-Wilk W 0.89 0.0067 w Shapiro-Wilk W 0.94 0.1093 System Mardia Skewness 24.13 0.2369 Mardia Kurtosis -0.40 0.6904 Henze-Zirkler T 2.29 0.0222
multivarijatni test normaliteta
![Page 24: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/24.jpg)
RezultatRezultat
multivarijatni Q-Q graf niske rezolucije
MULTNORM macro: Chi-square Q-Q plot
Plot of mahdist*chisq. Legend: A = 1 obs, B = 2 obs, etc.
‚ ‚ 12 ˆ ‚ ‚ ‚ ‚ A 10 ˆ ‚S ‚q ‚ Au ‚ Aa 8 ˆr ‚ Ae ‚ Ad ‚ ‚D 6 ˆ Ai ‚ As ‚t ‚ Aa ‚n 4 ˆ A AAAc ‚e ‚ AA ‚ AA ‚ BA 2 ˆ AA ‚ AAAA ‚ AAA ‚ ‚ 0 ˆ ‚ Šƒˆƒƒƒƒƒƒƒƒƒƒˆƒƒƒƒƒƒƒƒƒƒˆƒƒƒƒƒƒƒƒƒƒˆƒƒƒƒƒƒƒƒƒƒˆƒƒƒƒƒƒƒƒƒƒˆƒ 0.0 2.5 5.0 7.5 10.0 12.5
Chi-square quantile
![Page 25: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/25.jpg)
OgraniOgraniččenjaenja
uporaba računalne memorije tijekom računanja multivarijatnog testa proporcionalna je četvrtoj potenciji broja opservacija
srednje velike datoteke (velika 1000 podataka) mogu zahtjevati pretjerano dugo vrijeme za izvršavanje programa ili čak prekinuti rad uz javljanje greške (Unable to allocate sufficient memory)
![Page 26: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/26.jpg)
OgraniOgraniččenjaenja
u slučaju singularnosti matrice kovarijanci podataka, macro program prekida s radom uz poruku:
ERROR: Covariance matrix is singular.
procedura PRINCOMP (dio SAS/STAT modula) potrebna je za provjeravanje singularnosti, ako te procedure nema, pretpostavit će se nesingularnost i macro program će nastaviti dalje s radom
![Page 27: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/27.jpg)
OgraniOgraniččenjaenja
opservacije kod kojih nedostaje vrijednost barem jedne varijable (missing values) nisu uključene niti u analizu niti u grafički prikaz
![Page 28: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/28.jpg)
Alternativni pristupAlternativni pristup
Mardia-evi koeficijenti
![Page 29: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/29.jpg)
KhattreeKhattree--NaikNaikov programov program
u slučaju velikih setova podataka kada nije moguće koristiti %MULTNORM macro program uslijed opterećenja računalne memorije, moguće je koristiti program iz Ravindra Khattree i Dayanand N. Naik “Applied Multivariate Statistics with SAS Software” 2nd Edition, 1999 SAS Institute Inc., Cary, NC, SAD, SAS Publications order 56903
![Page 30: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/30.jpg)
KhattreeKhattree--NaikNaikov programov program
testiranje multivarijatnog normaliteta u ovom se programu temelji na Mardiaevom koeficijentu asimetrije i koeficijentu zaobljenosti dobivenih na uzorku
ovim se programom ne može dobiti Henze-Zirklerov test multivarijatnog normaliteta, kao ni testovi univarijatnog normaliteta ni grafički prikazi
![Page 31: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/31.jpg)
KhattreeKhattree--NaikNaikov programov program
proc iml; use cork; read all into y; n = nrow(y) ; p = ncol(y) ; dfchi = p*(p+1)*(p+2)/6 ; q = i(n) - (1/n)*j(n,n,1); s = (1/(n))*y`*q*y ; s_inv = inv(s) ; g_matrix = q*y*s_inv*y`*q; beta1hat = ( sum(g_matrix#g_matrix#g_matrix) )/(n*n); beta2hat =trace( g_matrix#g_matrix )/n ; kappa1 = n*beta1hat/6 ; kappa2 = (beta2hat - p*(p+2) ) /sqrt(8*p*(p+2)/n) ; pvalskew = 1 - probchi(kappa1,dfchi) ; pvalkurt = 2*( 1 - probnorm(abs(kappa2)) ); print s ; print s_inv ; print 'TESTS:'; print 'Based on skewness: ' beta1hat kappa1 pvalskew ; print 'Based on kurtosis: ' beta2hat kappa2 pvalkurt;
![Page 32: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/32.jpg)
KhattreeKhattree--NaikNaikov programov program
prije korištenja Khattree-Naikovog programa potrebno je u drugom redu programa navesti lokaciju i ime datoteke koja se želi testirati
proc iml;
use ‘biblioteka.datoteka-s-podacima’;
read all into y;
VAŽNO: datoteka smije sadržavati isključivo varijable koje se žele testirati
![Page 33: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/33.jpg)
Alternativni pristup 2Alternativni pristup 2
Mardia-evi koeficijenti i podaci s kovarijančnom strukturom
![Page 34: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/34.jpg)
AAnalinalizaza kkovariovarijjanceance
za modeliranje podataka s kovarijančnom strukturom, rabi se procedura CALIS
njome se modeliraju: složene i multivarijantne linearne regresije linearno mjerenje-pogreška modeli “path” analize i modeliranje uzročnosti faktorske analize bilo kojeg reda kanoničke korelacije mnogi modeli (ne)linearnih latentnih varijabli
![Page 35: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/35.jpg)
AAnalinalizaza kkovariovarijjanceance
procedura CALIS izuzetno je osjetljiva na odstupanje od normalne distribucije i atipične vrijednosti
opcijom Kurtosis (KU) izračunavaju se različiti koeficijenti zaobljenosti, no ne i pripadajuće p-vrijednosti
programom TestMultNormCALIS.sas mogu se izračunati p-vrijednosti za koeficijente zaobljenosti dobijene pomoću procedure CALIS
![Page 36: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/36.jpg)
AAnalinalizaza kkovariovarijjanceance
u SAS dokumentaciji (The CALIS Procedure Measures of Multivariate Kurtosis) nalazi se popis svih koeficijente zaobljenosti koji se mogu izračunati s tom procedurom
dio programa koji sadrži proceduru CALIS potrebno je prilagoditi željenom modelu
![Page 37: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/37.jpg)
data osnovni;set labrary.datoteka;
run;ods output 'Simple Statistics' = simstat; proc calis data = osnovni kurtosis;
lineqs varijabla1 = e1, varijabla2 = e2, varijabla3 = e3;
std e1=eps1, e2=eps2, e3=eps3;
cov e1=eps1, e2=eps2, e3=eps3;run; quit;ods output close; data y;
set simstat;if Label1 ne "Mardia's Multivariate Kurtosis" then delete; keep nValue1;
run; proc iml;
use osnovni;read all into y;
p = ncol(y) ; n = nrow(y) ; dfchi = p*(p+1)*(p+2)/6 ;
create df from dfchi[colname='df']; append from dfchi;close df;create n from n[colname='n']; append from n;close n;
data chiprob;merge y df n;
Value=nValue1*nValue1; sqrtKurt=sqrt(Value); Kurtosis=(sqrtKurt*n)/6; p = 1-PROBCHI(Kurtosis,df);
keep p nValue1 Kurtosis;format p comma8.4;label nValue1="Mardia's Multivariate Kurtosis";label Kurtosis="testna statistika";
run; proc print data = chiprob noobs LABEL ;
title1 "testiranje multivarijatnog normaliteta" j=c;title2 "pomocu Mardiaevog koeficijenta zaobljenosti";title3 "(Mardia's Multivariate Kurtosis)";
run;
![Page 38: Testiranje multivari j at nog normalit eta](https://reader035.vdocuments.mx/reader035/viewer/2022081514/56814333550346895dafa867/html5/thumbnails/38.jpg)
E-mail: [email protected] Telefon: (01) 616 55 97 Faks: (01) 616 55 91 Mailing lista: stat-sas-l
Referalni centar za analizu podataka i statistiku za potrebe akademske i istraživačke zajednice
(RC APIS)