Posts By Jiří Pešík

Porovnání t-testu a z-testu

V předcházejících článcích jsme rozebírali z-test a t-test. Oba testy slouží k otestování hypotézy o střední hodnotě a liší se pouze předpokladem o znalosti rozptylu. Nabízí se ale otázka, k čemu vlastně máme dva testy? Jakou výhodu vlastně přináší znalost rozptylu? Na to se nyní podíváme.

U obou dvou testů můžeme testovat hypotézy na stejných hladinách významnosti. Ať už tedy provedeme test pomocí z-testu nebo t-testu, můžeme si předem stanovit, že pravděpodobnost chyby 1. druhu (neoprávněného zamítnutí H_0 ) je například \alpha = 5 % . Neznalost rozptylu se ale projeví v pravděpodobnosti chyby 2. druhu, neboli v síle testu. V případě využití t-testu máme větší pravděpodobnost, že nezamítneme neplatnou H_0 .

Ukažme si to na příkladu oboustranného testu. Předpokládejme stejné hypotézy jako v předchozích článcích, tj.

  • H_0: \mu = 190 \, ,
  • H_1: \mu \neq 190 \, .

Vygenerujeme si soubor pomocí generátoru náhodných čísel. Ten nám vygeneruje čísla s požadovanými vlastnostmi. Budeme chtít data se střední hodnotou \mu = 190,35 a směrodatnou odchylkou \sigma = 0,5. Víme tedy, že nulová hypotéza neplatí. Pokud tedy nulovou hypotézu při testu zamítneme, bude náš výsledek správný. V opačném případě se dopouštíme chyby 2. druhu.

t-test-random-gen.PNG

Na obrázku níže máte vygenerovaná data a výsledky provedených testů.

t-test vs z-test

p-hodnota z-testu je 0,0196, p-hodnota t-testu je 0,1405. Na hladině významnosti \alpha = 5 % bychom tedy nulovou hypotézu zamítli pouze při použití z-testu. V případě použití t-testu bychom se dopustili chyby 2. druhu.

Soubor s výpočty si můžete stáhnout zde.

Na základě jednoho příkladu ale nejde vyvozovat nějaké obecnější závěry. Zkusme tedy komplexnější experiment. Využijeme soubor náhodných čísel, který jsme vytvořili pro analýzu síly testu z-testu.

T-test a jeho využití

Zásadním omezením z-testu, který jsme si popisovali minule, je nutnost znát rozptyl testovaného souboru. V realitě velikost rozptylu velmi často neznáme, a tak se musíme spokojit s jeho odhadem. V takovém případě musíme využít určitou “modifikaci” z-testu, která se nazývá t-test.

Soubor s daty i výpočty si můžete stáhnout zde: t-test.

Začněme s oboustranným t-testem. Uvažujeme následující příklad: Máme zařízení, které vyrábí součástku určité délky. Zařízení má určitou chybovost, jejíž přesnou velikost neznáme. Chyby mají normální rozdělení. Zařízení bylo nastaveno pracovníkem a my chceme ověřit, že pracovník nastavil správnou délku součástky, tj. 190 mm. Pro ověření jsme vybrali a přeměřili náhodný soubor dvaceti součástek.

Obecné principy testování hypotéz, které jsme si popsali v článku o z-testu, zůstávají v platnosti. Definujeme si tedy nulovou a alternativní hypotézu:

  • H_0: \mu = 190 \, \mathrm{mm}. (Slovně: Střední hodnota statistického souboru je 190 mm.)
  • H_0: \mu \neq 190 \, \mathrm{mm}. (Střední hodnota statistického souboru je není 190 mm.)

Statistiku získáme ze vzorce

t = \frac{\bar{x} - \mu_0}{s} \sqrt{n} \, ,

kde \bar{x} je průměr našeho vzorku, \mu_0 je teoretická (testovaná) střední hodnota, a n je rozsah náhodného výběru. Proměnná s je odhad rozptylu základního souboru a pro tento odhad využijeme výběrový rozptyl

s = \frac{\sum\limits^{n}_{i=1} (x_i -\bar{x})}{n-1} \, ,

kde x_i je i-tá hodnota v našem výběru. Jmenovatel zlomku může být pro někoho matoucí, protože bychom spíše očekávali hodnotu n. Má to však svůj dobrý důvod. Pokud bychom do jmenovatele umístili n, pak střední hodnota našeho odhadu by byla menší, než skutečná hodnota rozptylu. Blíže to popíšu v nějakém z dalších článků.

Naše statistika t nemá tentokrát normované rozdělení, ale má takzvané Studentovo neboli t rozdělení. Toto rozdělení má jeden parametr, který značíme \nu . V našem případě platí vztah

\nu = n - 1 \, .

t rozdělení má podobné vlastnosti jako normované normální: jeho střední hodnota je 0 a je symetrické kolem 0. Čím vyšší je hodnota parametru \nu , tím více se distribuční funkce t rozdělení blíží normovanému normálnímu. Často se uvádí, že u t-testu můžeme pro \nu > 30 použít normované normální rozdělení. Pokud však i pro tyto hodnoty použijeme t rozdělení, nejedná se o chybu.

Kvantilvou funkci t rozdělení s (\nu) stupni volnosti budeme značit  t_{p} (\nu). Kritický obor testu určíme ze vzorce

W = ( - \infty, t_{\frac{\alpha}{2}} \left(n-1 \right) \rangle \cup \langle t_{1-\frac{\alpha}{2}} \left( n - 1 \right), \infty ) \, ,

kde \alpha značí hladinu významnosti testu.

Nyní již víme vše, co potřebujeme, a můžeme se vrhnout na provedení testu v Excelu.

Oboustranný t-test v Excelu

Od verze 2010 obsahuje Excel přepracovanou sadu funkcí pro provádění statistických výpočtů. Používáte-li tedy verzi 2010 a vyšší, doporučuji vám tyto novější funkce využívat, protože jejich použití je v řadě případů jednodušší. Uživatelé starších verzí mají k dispozici pouze starší sadu funkcí. My si ukážeme postup pro obě varianty.

Náš testovací soubor máme uložený v buňkách A1 až A20. Test provedeme na \alpha = 5 % , tuto hodnotu máme v buňce D6.

t-test data 2

Jednostranná varianta z-testu

Minule jsme se zabývali provedením z-testu v Excelu. Provedli jsme takzvaný oboustranný test. U oboustranného testu byla alternativní hypotéza zadaná nerovností, tj. alternativní hypotéza tvrdila, že střední hodnota náhodného výběru je odlišná od teoretické (testované) střední hodnoty. V našem konkrétním případě jsme testovali, zda se střední hodnota délky součástky rovná či nerovná 190 mm.

Teoreticky mohou nastat tři situace:

  1. střední hodnota délky součástky je přesně 190 mm (tj. \mu = 190 \, \mathrm{mm}),
  2. střední hodnota délky součástky je menší než 190 mm (tj. \mu < 190 \, \mathrm{mm}),
  3. střední hodnota délky součástky je větší než 190 mm (tj. \mu > 190 \, \mathrm{mm}).

Pokud je výsledek našeho testování správný (tj. nedopustíme se chyby prvního nebo druhého druhu), pak v první situaci H_0 nezamítneme a ve druhé a třetí situaci hypotézu H_0 zamítneme.

Představme si ale, že bychom mohli druhou nebo třetí situaci předem vyloučit. Uvažujme například, že zařízení nedovolí dělníkovi zadat vyšší hodnotu než 190 mm. Třetí varianta tedy nemůže nastat a my se rozhodujeme pouze mezi první a druhou variantou. V takovém případě můžeme použít jednostranný test.

Levostranný z-test

Pro přehlednost napíšu znovu celé zadání příkladu: Máme zařízení, které vyrábí součástku určité délky. Směrodatná odchylka délky součástek v důsledku chybovosti zařízení je 0,9 mm a odchylky mají normální rozdělení. Požadovaná délka součástky je 190 mm. Pracovník nemůže zadat k výrobě delší součástku, v důsledku chybného zadání ale mohou být vyráběny kratší součástky. Ověřte, zda bylo zařízení správně nastaveno.

Naše hypotézy jsou nyní následující

  • H_0: \mu = 190 \, \mathrm{mm}. (Slovně: Střední hodnota statistického souboru je 190 mm.)
  • H_0: \mu < 190 \, \mathrm{mm}. (Střední hodnota statistického souboru je menší než 190 mm.)

Statistika testu zůstává stejná:

Z = \frac{\bar{x} - \mu_0}{\sigma} \sqrt{n} \, ,

přičemž \bar{x} je průměr našeho vzorku, \mu_0 je teoretická (testovaná) střední hodnota, \sigma je směrodatná odchylka základního souboru a n je rozsah náhodného výběru. Statistika má opět normované normální rozdělení.

Liší se však kritický obor. V tomto případě není kritický obor rozdělený na dvě části. Kritický obor se kompletně nachází (v závislosti na alternativní hypotéze) v levé nebo pravé části statistiky. Kam ho umístit v našem případě? Zkusme si to logicky odvodit.

Naše alternativní hypotéza tvrdí, že skutečná střední hodnota je menší než 190 mm. Jestliže platí, pak bude s větší pravděpodobností průměr vzorku menší než 190. Nižší hodnota \bar{x} než 190 znamená, že rozdíl \bar{x} - \mu_0 je záporný. Protože \sigman jsou vždy kladné, záporná hodnota tohoto rozdílu znamená, že i hodnota statistiky je záporná. Z toho plyne, že záporné hodnoty statistiky hovoří spíše ve prospěch alternativní hypotézy. Čím je hodnota statistiky menší, tím větší tendenci máme k zamítnutí nulové hypotézy.

Proto se kritický obor se nachází v levé části souřadnicové osy. Z toho důvodu označujeme test jako levostranný. Rovněž tak se můžeme rozhodnout podle znaménka nerovnosti u alternativní hypotézy. Kritické obory pro hladinu významnosti \alpha = 5 %\alpha = 1 % \alpha = 10 % naleznete na obrázku níže.

Je důležité si uvědomit, že plocha kritického oboru je stále 0,05. Tj. hranice kritického oboru (kritická hodnota) pro stejnou hladinu významnosti je “více vpravo” oproti kritickému oboru oboustranného testu.

Jak vzniká chyba 1. a 2. druhu

Pro někoho mohou být matoucí pojmy chyba 1. druhu a chyba 2. druhu. Protože tyto pojmy mohou být pro někoho obtížně pochopitelné nebo matoucí, ukážeme si nyní podrobně, jak tyto chyby mohou vzniknout a jak se projevují. Obě chyby si ukážeme na příkladu z-testu.

Zopakujme si, jak jsou tyto chyby definované. K chybě 1. druhu dochází, jestliže zamítneme nulovou (testovanou) hypotézu, i když tato hypotéza ve skutečnosti platí. Pravděpodobnost této chyby si volíme sami a označujeme ji jako hladinu významnosti. Chyba 2. druhu nastává, pokud nezamítneme nulovou hypotézu, i když ve skutečnosti neplatí.

Stejně jako v článku o z-testu, budeme testovat hypotézu, že střední hodnota základního souboru je 190. Směrodatná odchylka, kterou známe, je 0,9. Výběr pochází z normálního rozdělení.

Ukázkový soubor si můžete stáhnout zde: chyby-při-testech.

Chyba 1. druhu

Nejprve si musíme vygenerovat hodnoty, se kterými budeme pracovat. Microsoft Excel obsahuje funkci na generování náhodných čísel s požadovaným rozdělením a vlastnostmi. Na kartě Data klikneme na tlačítko Analýza dat a poté vybereme Generátor pseudonáhodných čísel. Pokud tlačítko Analýza dat nevidíme, znamená to, že v Excelu není nainstalován doplněk Analýza dat. Ten můžeme snadno doinstalovat pomocí tohoto návodu.

Vygenerujeme si tedy 100 náhodných čísel se střední hodnotou 190 a směrodatnou odchylkou 0,9. Správné nastavení si můžete prohlédnout na obrázku níže.

chyba-1-druhu-generator

Máme nyní k dispozici základní soubor, který má střední hodnotu 190. Provedeme z toho souboru několik výběrů o rozsahu 20. Výběry vidíte na obrázku níže. V prvním případě jsme vybrali prvních 20 hodnot. Ve druhém a třetím případě vybíráme 20 nejvyšších, resp. nejnižších hodnot. Tyto výběry určitě nejsou náhodné. Důležité však je, že k výběru těchto hodnot by mohlo (byť s velmi nízkou pravděpodobností) dojít i při náhodných výběrech.

Níže vidíme p-hodnoty testu nulové hypotézy a výsledky z-testů na hladině významnosti \alpha = 5 % . Protože my ale víme, že nulová hypotéza platí, můžeme i rozhodnout o tom, zda je výsledek testu správný nebo chybný. V případě prvního výběru testovou hypotézu nezamítáme, což je správný výsledek. Při použití druhého a třetího výběru však nulovou hypotézu zamítáme, což je chybné rozhodnutí, protože nulová hypotéza platí. Jde tedy o chybu 1. druhu.

z-test chyba 1. druhu

Výběry nejvyšších nebo nejnižších hodnot jsou “extrémní” metodou výběru. To dokazuje i extrémně nízká p-hodnota textu. K chybě 1. druhu na \alpha = 5 %  by však došlo i v případě jiného výběru.

Ukážeme si nyní, že k chybě 1. druhu může dojít i v případě čistě náhodného výběru. Zkusíme navíc provést velké množství náhodných výběrů a uvidíme, že k chybě 1. druhu dochází přibližně v pěti procentech případů, což odpovídá hodnotě hladiny významnosti \alpha = 5 % .

Vygenerujeme si nyní (stejným postupem jako dříve) náhodný výběr o rozsahu 10 000 a provedeme 1 000 náhodných výběrů. K náhodnému výběru použijeme funkce INDEX a RANDBETWEEN. Funkce INDEX vybere n-tý řádek z námi zadaného pole hodnot. Číslo řádku chceme získat náhodně. K získání náhodného celého čísla použijeme funkci RANDBETWEEN pro rozsah od jedné do počtu hodnot v základním souboru, tj. 10000. Jestliže máme hodnoty ve sloupci A, výsledný vzorec vypadá takto:

=INDEX($A$1:$A$10000;RANDBETWEEN(1;$I$6))

Pro každý náhodný výběr provedeme z-test pomocí funkce z-test. Poté zjistíme počet chyb 1. druhu při testování. Použijeme funkci KDYŽ, která nám vrátí hodnotu 1, pokud došlo k chybě 1. druhu, jinak 0.

=KDYŽ(Q23>$I$4;0;1)

Poté pomocí funkcí SUMA a počet zjistíme procentuální podíl chybných výsledků ve všech provedených testech.

=SUMA(Q24:AMB24)/POČET(Q24:AMB24)

Na obrázku níže vidíme, že tento procentuální podíl skutečně vychází přibližně 5 %.

chyba-1-druhu-vysledek

V ukázkovém souboru se vám při každém opuštění buňky hodnoty přegenerují. To je způsobeno tím, že funkce RANDBETWEEN pokaždé generuje nová náhodná čísla.

Na následujícím obrázku červeně vidíte průměrnou hodnotu náhodných výběrů, pro které nulovou hypotézu zamítáme, a zeleně průměrné hodnoty výběrů, pro které ji nezamítáme. Nulovou hypotézu tedy zamítáme v případě, když je průměr náhodného výběru “příliš vzdálený” od teoretické střední hodnoty. Můžeme určit i interval pro průměr, pro který nulovou hodnotu ještě nezamítáme. Samozřejmě platí, že pro vyšší hladinu významnosti by tento interval byl širší.

z-test-stat-first-error-avg-dep