Újdonságok a -ben

Nemparametrikus tesztek a trendre

A trend tesztek válaszokat tartalmaznak rendezett csoportokban. Megvizsgálják, hogy a válaszértékek általában nőnek vagy csökkennek-e a csoportok között.
A trendteszteket általában akkor alkalmazzák, ha csak kis mennyiségű adat van, és nincsenek kovariátjai az ellenőrzésre, és olyan tesztre van szükség, amely kis mintákban érvényes p-értéket eredményez. Az nptrend lehetősége van pontos p-értékek kiszámítására Monte Carlo-permutációk vagy a permutációs eloszlás teljes felsorolása alapján (ez utóbbi csak rendkívül kis minták esetében praktikus).
nptrend négy különböző tesztet hajt végre a trend szempontjából:

  • a Cochran–Armitage teszt,
  • a Jonckheere–Terpstra teszt,
  • a linear-by-linear trend testz, és
  • Cuzick által kifejlesztett teszt rangsorokat használva.

A trend Cochran – Armitage statisztikájának kiszámításához írja be

. nptrend relief, group(dose) carmitage

Kiemelt

  • Az nptrend négy nemparaméteres tesztet hajt végre a trend szempontjából
    • Cochran–Armitage teszt
    • Jonckheere–Terpstra teszt
    • linear-by-linear teszt
    • Cuzick tesztje rangokkal
  • opció a pontos p-értékekhez

Lássuk hogyan működik

A Cochran – Armitage teszt (amikor a válasz 0/1), a linear-by-linear trendteszt és a Cuzick-teszt esetében a csoportok is rendelkeznek pontszámokkal. Teszteli a pozitív válaszok arányát a csoportok között.
Itt vannak kitalált adataink egy migrén kezelésére szolgáló új gyógyszer klinikai vizsgálatából. A változó dózis tartalmazza az alanynak adott gyógyszer dózisát dose . A változó relief 0/1, a 0 azt jelzi, hogy nincs megkönnyebbülés, és 1 részleges vagy teljes megkönnyebbülés.
Itt található az adatok táblázata:

. webuse migraine
(Fictional migraine drug data)

. tabulate dose relief, row nokey

Relief of migraine
Mycureit after 2 hours
dose in mg 0 1 Total
10 80 120 200
40.00 60.00 100.00
20 92 108 200
46.00 54.00 100.00
30 83 117 200
41.50 58.50 100.00
40 63 137 200
31.50 68.50 100.00
Total 318 482 800
39.75 60.25 100.00

Megvizsgáljuk, hogy van-e dózis szerinti tendencia a megkönnyebbülésről beszámoló alanyok arányában.

. nptrend relief, group(dose) carmitage

Cochran–Armitage test for trend

   Number of observations =      800
         Number of groups =        4
Number of response levels =        2

Mean
response Number
Group Group score score of obs
dose
10 10 .6 200
20 20 .54 200
30 30 .585 200
40 40 .685 200
Statistic = .003 Std. err. = .0015476 z = 1.939 Prob > |z| = 0.0526 Test of departure from trend: chi2(2) = 5.45 Prob > chi2 = 0.0656

nptrend először egy táblázatot jelenít meg az átlagos válasz pontszámról csoportonként.Az átlagos válaszpontszám ebben az esetben egyszerűen a megkérdezettek aránya a megkönnyebbülésről jelentő csoportban.
A Cochran – Armitage z statisztika lineáris trendet tesztel. Egy X2statisztikát is kiszámítanak, amely teszteli a lineáris trendtől való eltérést. Ha a lineáris trend z statisztikája vagy a lineáris trendtől való eltérés X2 statisztikája nagy, az azt jelenti, hogy a válasz és a csoport közötti függetlenségi tesztet elutasítják. z nagy volta azt jelenti, hogy van egy lineáris trend, amely elutasítja a függetlenséget. Mivel az X2 nagy, azt jelenti, hogy a lineáris trenden kívül vannak más különbségek, amelyek elutasítják a függetlenséget.
A fenti példában a lineáris trendteszt 0,0526 p-értéket adott, amely nem egészen érte el a szignifikanciát a 0,05 szinten. A trendtől való eltérés tesztje 0,0656 p-értéket adott, ami azt jelenti, hogy gyenge bizonyítékok állnak rendelkezésre, amelyek nem érik el a jelentőséget a dózis és a megkönnyebbülés közötti nemlineáris összefüggésről.
A lineárison kívüli trendeket a scoregroup() opcióval is tesztelni lehet. Ebben a példában a scoregroup(1 4 9 16) megadása négyzetes dózis trendet tesztelne. A Cochran – Armitage teszt megköveteli, hogy a válaszok 0/1 legyenek, különben a csoport mutatója 0/1. Az nptrend által kiszámított többi trendteszt nem korlátozza a választ; a válaszváltozónak bármilyen értéke lehet.
Íme egy példa arra, hogy a válasz ultraibolya sugárzásnak való kitettség 32 napszemüveg esetében. A napszemüvegeket 3 csoportba sorolják a látható fény mennyisége szerint.
Néhány adatot felsorolunk:

. webuse sg
(Ultraviolet radiation exposure with sunglasses)

. list in 1/12, separator(6)

  group exposure
1. < 25% 1.4
2. < 25% 1.4
3. < 25% 1.4
4. < 25% 1.6
5. < 25% 2.3
6. < 25% 2.5
7. 25% to 35% .9
8. 25% to 35% 1
9. 25% to 35% 1.1
10. 25% to 35% 1.1
11. 25% to 35% 1.2
12. 25% to 35% 1.2

A Jonckheere – Terpstra teszt akkor hasznos, ha nem világos, hogy mi lehet a trend, és egyszerűen tesztelni szeretnénk bármilyen trendet. Megvizsgálja, hogy a válaszok sorrendje összefügg-e a csoportok sorrendjével.
A Jonckheere – Terpstra teszt kiszámításához megadjuk az opciót jterpstra.

. nptrend exposure, group(group) jterpstra

Jonckheere–Terpstra test for trend

   Number of observations =       32
         Number of groups =        3
Number of response levels =       23

Mean
response Number
Group Group score score of obs
group
< 25% 1 1.766667 6
25% to 35% 2 2.311111 18
> 35% 3 4.85 8
Statistic = 82 Std. err. = 54.80056 z = 1.496 Prob > |z| = 0.1346

Látjuk, hogy az átlagos válaszpontszám növekszik a csoportmutató növekedésével, de a Jonckheere – Terpstra teszt p-értéke 0,1346, nem ér el szignifikanciát 0,05-ös szinten. Mivel a Jonckheere – Terpstra statisztika a rendezett csoportok közötti válaszok bármilyen típusú trendjére tesztel, ez nem lesz olyan erős, mint egy teszt, amely pontosan feltételezi a valódi trendet. A lineáris-lineáris trendteszt lehetővé teszi, hogy csak ezt tegye. A linear-by-linear trendteszt a válaszok numerikus értékeivel határozza meg a tesztelt trendet. Azt, hogy a tendencia hogyan változik csoportonként, a csoportváltozó numerikus értéke határozza meg.
A linear-by-linear statisztika egyenértékű a Pearson-korrelációs együtthatóval, azzal a különbséggel, hogy a Pearson-korrelációs együtthatót a pontszámok szórásai standardizálják. A p-értékek kissé eltérnek, mivel a linear-by-linear teszt p-értéke a permutációs eloszlásán alapul, míg a Pearson-korrelációs együttható p-értéke normalitást feltételez.
A lineáris-lineáris teszt kiszámításához megadjuk az opciót linear. Meghatározzuk azt is, hogy notable legyen az átlagos válasz pontszámok csoportonkénti megjelenítésének elnyomása.

. nptrend exposure, group(group) linear notable

Linear-by-linear test for trend

   Number of observations =       32
         Number of groups =        3
Number of response levels =       23

                Statistic = .7035156
                Std. err. = .3063377
                        z =    2.297
               Prob > |z| =   0.0216

A lineáris-lineáris teszt p-értéke 0,0216, ami jelentősen eltér a Jonckheere – Terpstra teszttel kiszámított p-értéktől, amely 0,1346. Ez nem meglepő, mert a lineárisan-lineáris teszt numerikus értékek alapján meghatározott tendenciát feltételez, míg a Jonckheere – Terpstra statisztikai tesztek bármely trend esetében. Az nptrend által kiszámított negyedik trendteszt a Cuzick által kifejlesztett rangokon alapuló teszt.

. nptrend exposure, group(group) cuzick

. nptrend exposure, group(group) cuzick notable

Cuzick's test with rank scores

   Number of observations =       32
         Number of groups =        3
Number of response levels =       23

                Statistic =  1.65625
                Std. err. = 1.090461
                        z =    1.519
               Prob > |z| =   0.1288

Ebben az esetben egy p-értéket állít elő, amely hasonló a Jonckheere – Terpstra teszt p-értékéhez.

Pontos p-értékek

nptrend kiszámítja a pontos p-értékeket Monte Carlo-permutációk segítségével, amikor a exact opció meg van adva. Itt kiszámoljuk a Jonckheere – Terpstra teszt pontos p-értékét.

. nptrend exposure, group(group) jterpstra notable exact

Permutations (10,000): ..........1,000..........2,000..........3,000..........4,000..........5,00
> 0..........6,000..........7,000..........8,000..........9,000..........10,000 done

Jonckheere–Terpstra test for trend

   Number of observations =       32
         Number of groups =        3
Number of response levels =       23

                Statistic =       82
                Std. err. = 54.80056
                        z =    1.496
               Prob > |z| =   0.1346
               Exact prob =   0.1510 (10,000 Monte Carlo permutations)

Alapértelmezés szerint 10 000 Monte Carlo permutációt használnak. Ennek eredményeként a pontos p-érték 0,1510, kissé eltérően a 0,1346 p-értéktől, normál közelítéssel számítva. A Monte Carlo permutációk véletlenszerű hibával adnak eredményeket, így a pontosság érdekében több permutációt lehet kiszámítani. Az alábbiakban 100 000 permutációt használunk, és minden 1000. permutáción megjelenik egy pont a haladás figyelemmel kísérésére. Megadunk egy véletlenszámú magot, így megismételhetjük az eredményeket és az opció show, amely a Monte Carlo eredmények részletes táblázatát jeleníti meg.

. nptrend exposure, group(group) jterpstra notable ///
> exact(montecarlo, reps(100000) dots(1000) rseed(1234) show)

Permutations (100,000): ..........10,000..........20,000..........30,000..........40,000....
> ......50,000..........60,000..........70,000..........80,000..........90,000..........100,
> 000 done

Monte Carlo permutation results                Number of observations =      32
Permutation variable: group                    Number of permutations = 100,000

Monte Carlo error
T T(obs) Test c n p SE(p) [95% CI(p)]
_pm_1 82 lower 93358 100000 .9336 .0008 .9320 .9351
upper 6874 100000 .0687 .0008 .0672 .0703
two-sided .1375 .0011 .1353 .1396
Notes: For lower one-sided test, c = #{T <= T(obs)} and p = p_lower = c/n. For upper one-sided test, c = #{T >= T(obs)} and p = p_upper = c/n. For two-sided test, p = 2*min(p_lower, p_upper); SE and CI approximate. Jonckheere–Terpstra test for trend Number of observations = 32 Number of groups = 3 Number of response levels = 23 Statistic = 82 Std. err. = 54.80056 z = 1.496 Prob > |z| = 0.1346 Exact prob = 0.1375 (100,000 Monte Carlo permutations)

a Monte Carlo-számítás pontos p-értéke 0,1375, közel a hozzávetőleges 0,1346 p-értékhez. Az eredmények részletes táblázatából azt látjuk, hogy a Monte Carlo p-érték 95% -os konfidenciaintervalluma [0,13353, 0,1396], amely nem tartalmazza a hozzávetőleges p-értéket.
Ez a példa csak 32 megfigyelést tartalmaz.Ha közzé akarjuk tenni az eredményeket, valószínűleg újra szeretnénk futtatni az nptrend , meghatározva legalább 1 000 000 permutációt, hogy tovább csökkentsük a Monte Carlo hibát. A permutációkat gyors algoritmus segítségével állítják elő, és a számítás nem időigényes.
Rendkívül kicsi adatkészletek esetén a exact(enumerate) opció használható a permutációs eloszlás teljes felsorolására. Pontos p-értéket ad Monte Carlo hiba nélkül.