Statistické metody v ekonomii Ing. Michael Rost, Ph.D. Jihočeská univerzita v Českých Budějovicích
Proč neparametrické testy? Pokud provádíte formální analýzu či testování hypotéz (zejména provádíte-li parametrické testy), při kterém využíváte ke zhodnocení dosaženou hladinu významnosti, tj. p-value, pak zpravidla vycházíte z jistých předpokladů. Ty však nemusí být splněny. Je důležité si uvědomit to, že stupeň validity dosažené hladiny významnosti, tj. p-value závisí na tom, jakou shodu vykazují naše data s teoretickými rozděleními. Proto je nutné tyto předpoklady ověřovat!
Testy pro ověření shody s rozděleními - ověření normality Existuje několik různých způsobů jak ověřit normalitu dat. Některé jsou založeny na porovnání empirické distribuční funkce s teoretickou distribuční funkcí. Příkladem je Smirnovův test nebo Shapiro-Wilksův test. Jiné testy jsou založeny na charakteristikách špičatosti nebo šikmosti, případně kombinaci obou zmiňovaných charakteristik. Příkladem může být d Agostinův test. Normalitu lze do jisté míry posoudit i graficky pomocí tzv. kvantil-kvartilového grafu (Q-Q graf).
Shapiro-Wilkův test Nejčastěji využívaným testem, je v případě malého až středního rozsahu dat (n 2000) tzv. Shapiro-Wilkův test. Testová statistika W k posouzení normality dat je definována jako: W = ( m i=1 ) 2 a (n) i (x (n i+1) x (i) ) n i=1 (x i x) 2 kde m = n/2 pokud je n sudé, jinak m = (n 1)/2 pokud je n liché. Koeficienty a (n) i jsou tabelovány.
Shapiro-Wilkův test Předpis pro Shapiro-Wilkův test lze vyjádřit i jinak: W = ( n i=1 n i=1 a i x (i) ) 2 (x i x) 2, kde x (i) označují pořádkové statistiky a a i váhy, které jsou odvozeny ze středních hodnot a varianční matice pořádkových statistik prostého náhodného výběru z N (0, 1) rozsahu n. Tyto váhy bývají tabelovány.
Shapiro-Wilkův test Na testovou statistiku W lze pohĺıžet jako na korelaci mezi pozorovanými hodnotami a jejich normálními skóry. Testová statistika dosahuje hodnoty 1 v případě, že data vykazují perfektní shodu s normálním rozdělením. Je-li W statisticky významně nižší než 1, zamítáme nulovou hypotézu o shodě s normálním rozdělením. Jinou modifikací tohoto testu je tzv. Shapirův -Franciasův test. Ten je konstruován pro rozsah výběru do 5000 pozorování.
Man-Whitneyův pořadový test Jde o neparametrickou variantu t-testu pro nezávislé výběry. Testovaná hypotéza předpokládá shodu rozdělení dvou nezávislých výběrů. Test není vázán na předpoklad normality výběrů. Předpokladem je pouze spojitost obou distribučních funkcí. Princip testu spočívá v tom, že oba výběry sloučíme a vzestupně uspořádáme bez ohledu na to, do kterého výběru jednotlivé hodnoty patřily. Takto seřazeným hodnotám přiřadíme pořadí (stejným hodnotám přiřazujeme průměrné pořadí).
Man-Whitneyův pořadový test Pokud se neliší jejich rozdělení, pak budou mít i shodné průměrné pořadí. Symbolem R A označme součet pořadí příslušející výběru A. Analogicky symbolem R B označme součet pořadí pro B. Testová statistika pro Mannův-Whitneyův test je koncipována jako: U = min(u A, U B ), kde U A = n 1 n 2 + n 1(n 1 + 1) 2 R A U B = n 1 n 2 + n 2(n 2 + 1) 2 R B
Je-li testová statistika U menší než kritická hodnota, zamítáme nulovou hypotézu ve prospěch alternativní hypotézy. Kritické hodnoty jsou pro malá n 1, n 2 tabelovány. Uvažujme následující příklad. V logistickém řetězci byla vyhodnocována doba potřebná na zajištění dodávek od dvou výrobců A a B [v min]. K dispozici jsou tyto údaje: Čas v min A 109 214 1818 140 179 744 108 101 107 1547 529 140 B 546 844 602 87 794 643 199 91 105 479 1296 279 Příklad bychom řešili prostřednictvím dvouvýběrového t-testu. Ověřme však nejprve normalitu dat.
Řešení dataa<-c(109,214,1818,140,179,744,108,101,107,1547,529,140) datab<-c(546,844,602,87,794,643,199,91,105,479,1296,279) shapiro.test(dataa);shapiro.test(datab) Shapiro-Wilk normality test data: dataa W = 0.6828, p-value = 0.0005789 Shapiro-Wilk normality test data: datab W = 0.9194, p-value = 0.2808 Z výsledků Shapiro-Wilksova testu je patrné, že u prvního souboru lze zamítnout hypotézu o normalitě. Je tedy zřejmé, že nelze použít dvouvýběrový t-test.
Vizualizace pro posouzení normality? Proč ne. Pro zajímavost se podívejme ještě na kvantil-kvartilový graf. Q Q graf pro A Q Q graf pro B Theoretical Quantiles 1.5 1.0 0.5 0.0 0.5 1.0 1.5 Theoretical Quantiles 1.5 1.0 0.5 0.0 0.5 1.0 1.5 500 1000 1500 Sample Quantiles 200 600 1000 Sample Quantiles
Jak na to v R? Provedeme tedy Mann-Whitneyův test. dataa<-c(109,214,1818,140,179,744,108,101,107,1547,529,140) datab<-c(546,844,602,87,794,643,199,91,105,479,1296,279) wilcox.test(dataa,datab) Wilcoxon rank sum test with continuity correction data: dataa and datab W = 63, p-value = 0.6235 alternative hypothesis: true mu is not equal to 0 Warning message: cannot compute exact p-value with ties in: wilcox.test.default(dataa, datab) Z výsledků plyne, že na hladině významnosti α = 0, 05 nelze na základě získaných dat zamítnout nulovou hypotézu o shodě mediánů obou souborů.
Jak vypadají statistické tabulky
Jak vypadají statistické tabulky
Wilcoxonův párový test Wilcoxonův test představuje neparametrickou variantu párového t-testu. Testujeme předpoklad shody dvou mediánů. Test není vázán na předpoklad normality výběrů. Předpokladem je pouze spojitost obou distribučních funkcí. Podstata Wilcoxonova testu spočívá ve vytvoření diferencí d i, kde párových d i = x 2i x 1i pro i = 1, 2,, n. Nulové diference, tj. d i = 0 dále v testu neuvažujeme. Nenulové diference uspořádáme od nejmenší absolutní hodnoty po největší absolutní hodnotu a takto seřazeným diferencím přiřadíme pořadí.
Wilcoxonův párový test Získaná pořadová čísla rozděĺıme do dvou skupin dle znamének diferencí. Součet pořadových čísel ve skupině kladných rozdílů označme R +. Analogicky R označuje součet pořadových čísel ve skupině záporných rozdílů. Platí: R + + R = n (n + 1)/2, kde n značí počet nenulových rozdílů. Testovou statistikou je hodnota R +. Překročí-li testová statistika kritickou hodnotu (pro malé rozsahy je tabelována) zamítáme nulovou hypotézu o shodě středních hodnot.
Wilcoxonův párový test U většího rozsahu dat lze použít normální normované rozdělení. Testová statistika je pak definována jako: u = R + n (n + 1)/4 [n (n + 1)(2n + 1)/24] Kritické obory pak definujeme následovně: H 0 H A Kritický obor K µ 2 > µ 1 {u; u u 1 α } µ 1 = µ 2 µ 2 < µ 1 {u; u u 1 α } µ 1 µ 2 {u; u u 1 α/2 }
Příklad V následující tabulce jsou uvedeny potřebné časy pro výrobu jistého hydraulického zařízení před zavedením (A) a po zavedení (B) zlepšovacího návrhu. Ostatní prvky výrobního procesu byly zachovány. Zjistěte, zda zavedením zlepšovacího návrhu došlo ke změně doby výroby. Měření Technologie 1 2 3 4 5 6 7 8 9 10 A 396 568 1212 171 554 1104 257 435 295 397 B 236 786 311 449 811 686 412 286 336 936 Mohli bychom uvažovat o Studentovu párovém t-testu, ale ověřme nejprve normalitu naměřených dat.
pokračování... Využijme pro tento účel Shapiro-Wilksův test. V programovacím prostředí Rje to jednoduché: A<-c(396,568,1212,171,554,1104,257,435,295,397) B<-c(236,786,311,449,811,686,412,286,336,936) shapiro.test(a) Shapiro-Wilk normality test data: A W = 0.8303, p-value = 0.03376 Z výsledků provedeného testu je patrné, že lze s více než 95 % spolehlivostí zamítnout nulovou hypotézu, která tvrdí, že data (soubor A) sledují normální rozdělení. Nelze tedy použít Studentův párový t-test. Alternativou je Wilcoxonův párový test.
Jak to tedy dopadlo? V programovacím prostředí R využiji jednoduchého příkazu: A<-c(396,568,1212,171,554,1104,257,435,295,397) B<-c(236,786,311,449,811,686,412,286,336,936) wilcox.test(a,b,paired=true) data: A and B V = 24, p-value = 0.7695 alternative hypothesis: true mu is not equal to 0 Na hladině významnosti α = 0, 05 se na základě zkoumaných dat nepodařilo prokázat, že zlepšovací návrh vede ke změně výrobního času, tj. že jsou mediány výrobních časů statisticky významně odlišné.
Znaménkový test Testovanou hypotézou je: H 0 : x 50 = m Tento test předpokládá pouze spojitost rozdělení ze kterého pochází sledovaná veličina. Testovou statistiku lze vyjádřit následovně T = #x i pro které platí: x i > m V průběhu výpočtu vyřadíme hodnoty se stejnou hodnotou jako m. Za předpokladu platnosti nulové hypotézy lze psát: T Bi(n; 0, 5).
Výpočet dosažené hladiny významnosti pro znaménkový test p value H A P(T pozorované T H 0 ) H A : x 50 > m P(T n pozorované T H 0 ) H A : x 50 < m P(T max(pozorované T; n pozorované T) H 0 ) H A : x 50 m
Příklad Sledujme délku telefonních hovorů v minutách. Data jsou následující 2 1 3 3 3 3 1 3 16 2 2 12 20 3 1 Jsou tato data konzistentní s hypotézou, že průměrná délka hovoru je 5 minut, nebo data podporují hypotézu, že délka telefonních hovorů je ve skutečnosti kratší?
Řešení v R data<-c(2,1,3,3,3,3,1,3,16,2,2,12,20,3,1) median<-5 statistika<-sum(data>5) n<-length(data) n-statistika [1] 12 Pozor k výpočtu p value pomocí funkce pbinom(x) R počítá hodnotu distribuční funkce jako P(X x). Z toho důvodu je nutné zadat hodnotu x sníženou o jednotku nebot platí: P(X x) = 1 P(X x 1) pro R tedy jako 1-pbinom(x-1,n,1/2) 1-pbinom(12-1,n,1/2) [1] 0.01757812
Kolmogorovův test V některých případech je nutno ověřit hypotézu, že náhodný výběr pochází z určitého předem plně specifikovaného spojitého rozdělení. V takovém případě můžeme využít Kolmogorovův test. Někdy bývá též nazýván jednovýběrový Kolmogorovův-Smirnovův test. Tento test má oproti χ 2 malého rozsahu dat. testu větší sílu, zejména v případě
Princip Kolmogorova testu Princip testu lze vysvětlit následovně. Jednotlivá pozorování uspořádáme do neklesající posloupnosti, tj. x (1) x (2)... x (n). Vytvoříme výběrovou (empirickou) distribuční funkci: ˆF(x) = 0 x x (1) i/n x (i) < x x (i+1) i = 1, 2,, n 1 1 x > x (n) Zřejmě funkce ˆF(x) splňuje všechny požadavky kladené na distribuční funkci.
Princip Kolmogorova testu Stanovíme testové kritérium d: d = sup x ˆF(x) F(x), kde F(x) je distribuční funkce rozdělení, ze kterého předpokládáme, že výběr pochází. Interpretace testové statistiky d: Testové kritérium d představuje maximální absolutní odchylku empirické distribuční funkce od distribuční funkce specifikované v nulové hypotéze. Vzhledem k tomu, že grafem distribuční funkce ˆF(x) je schodovitá křivka s n body nespojitosti, může být maximální odchylka představována vzdáleností křivky F(x) od,,paty schodu, nebo vzdálenost křivky F(x) od,,vrcholu schodu.
Princip Kolmogorova testu Díky této drobné komplikaci musíme pro body x (1), x (2),..., x (n) stanovit hodnoty absolutních odchylek a ˆF(x (i) ) F(x (i) ), i = 1, 2,, n. ˆF(x (i+1) ) F(x (i) ), i = 1, 2,, n. kde ˆF(x n+1 ) = 1, kde největší z těhchto odchylek bereme za hodnotu testového kritéria. Kritické hodnoty lze nalézt ve statistických tabulkách.
Motivační příklad Ověřme pomocí Erka hypotézu, která tvrdí, že doba čekání na obsluhu v hypermarketu je náhodnou veličinou sledující exponenciální rozdělení se střední hodnotou 10. Předpokládá se, že zákazník může být obsloužen okamžitě. V hypermarketu byly naměřeny následující údaje: 6 min, 0 min, 2 min, 4 min, 9 min, 20 min, 35 min, 1 min, 3 min, 2 min.
Jak to otestuji v prostředí R Velmi jednoduše: data<-c(6,0,2,4,9,20,35,1,3,2) ks.test(data,"pexp",1/10) One-sample Kolmogorov-Smirnov test data: data D = 0.2703, p-value = 0.458 alternative hypothesis: two.sided Warning message: cannot compute correct p-values with ties in: ks.test(data, "pexp", 1/10) S 95 % spolehlivostí se nám nepodařilo zamítnout nulovou hypotézu, která připouští, že výběr pochází z exponenciálního rozdělení s parametry E(0; 10).
Závěrem Lze říci, že neparametrické testy se používají při analýze dat, jejichž rozdělení neodpovídá rozdělení předpokládanému v parametrických metodách viz předpoklad normality u t-testů. Ačkoli nepředpokládají normální rozdělení, nejsou úplně bez předpokladů! Lze si také všimnout, že některé neparametrické metody vyžadují pouze minimální informaci, což může být v některých případech výhodné.