T-próba R programozásban: Egymintás és párosított példa

⚡ Okos összefoglaló

Az R-ben a t-próba a t.test() függvény segítségével hasonlítja össze az átlagokat, egy mintát egy fix célmintával, két független csoporttal és párosított ismételt mérésekkel lefedve. Ez a bemutató lefuttatja az egyes variánsokat, helyesen beolvassa a p-értéket, és ellenőrzi az alapul szolgáló feltételezéseket.

  • 📐 Alapvető statisztikák: A t-érték a megfigyelt átlagos különbséget osztja a standard hibájával, így a nagyobb nagyságrendek a nullhipotézis ellen szólnak.
  • 🧪 Egymintás teszt: A t.test(x, mu = 10) egyetlen vektort ellenőrzi egy elméleti értékkel, például egy receptspecifikációval szemben.
  • 👥 Kétmintás teszt: A t.test(x, y) függvény két független csoportot hasonlít össze, és alapértelmezés szerint a Welch-korrekciót használja az egyenlőtlen varianciára.
  • 🔗 Párosított teszt: A párosított = IGAZ hozzáadása az egyéneken belüli különbségek átlagát teszteli, és eltávolítja a közös variációt.
  • Feltételezés-ellenőrzések: A p-értékek jelentése előtt használd a shapiro.test() függvényt a normalitás, az azonos variancia vizsgálatához pedig a var.test() függvényt.
  • 📊 Döntési szabály: A 0.05 alatti p-érték elveti a nullhipotézist, de soha nem bizonyítja az alternatív hipotézis igazságát.

T-próba R-ben Egy minta párosítása

Mi az a statisztikai következtetés?

A statisztikai következtetés az adatok eloszlására vonatkozó következtetések levonásának művészete. Az adattudósok gyakran olyan kérdésekkel szembesülnek, amelyekre csak tudományosan lehet válaszolni. Ezért a statisztikai következtetés egy olyan stratégia, amelynek célja annak tesztelése, hogy egy hipotézis igaz-e, azaz hogy az adatok igazolják-e.

A hipotézisek értékelésének egy gyakori stratégiája a t-próba, amely megmutatja, hogy két átlag egyenlő-e. Más néven t-próba. DiáktesztEgy t-próba kiszámítható a következőkre:

  1. Egyetlen vektor egy fix érték függvényében (egymintás t-próba)
  2. Két vektor két különálló csoportból (független kétmintás t-próba)
  3. Két vektor mérése ugyanazon alanyokon (párosított t-próba)

Minden t-próba feltételezi, hogy az adatokat véletlenszerűen mintavételezzük, és az értékek (vagy párosított próba esetén a különbségek) egy közelítőleg normális eloszlású populációból származnak. A független kétmintás változat azt is feltételezi, hogy a két csoport független egymástól, a klasszikus forma pedig azt feltételezi, hogy a varianciáik egyenlőek.

Mi az a T-teszt az R programozásban?

A T-teszt mögött meghúzódó alapötlet az, hogy statisztikákat használjunk két ellentétes hipotézis értékelésére:

  • H0: a nullhipotézis, miszerint a populáció átlaga megegyezik a tesztelt értékkel
  • H1: az alternatív hipotézis, miszerint a populáció átlaga eltér ettől az értéktől

A t-próbát kis mintákra tervezték, ahol a normális közelítés megbízhatatlan. Megköveteli, hogy az adatok megközelítőleg normális eloszlásúak legyenek.

T-Test szintaxis az R-ben

A t.test() alapvető szintaxisa R-ben:

t.test(x, y = NULL,
       mu = 0, var.equal = FALSE)
arguments:
- x : A vector to compute the one-sample t-test
- y: A second vector to compute the two sample t-test
- mu: Mean of the population under the null hypothesis
- var.equal: Specify whether the variances of the two vectors are equal. By default, set to `FALSE`
- paired: Set to `TRUE` when the two vectors are repeated measures on the same subjects

Mielőtt bármit futtatnál, igazítsd az adatelrendezést a teszt megfelelő változatához.

T-próba típusai R-ben

A rossz variáns kiválasztása a leggyakoribb t-próba hiba, ezért kezdjük azzal, hogy az adatelrendezést a megfelelő híváshoz illesztjük.

típus Használd, amikor R hívás
Egymintás Egy csoport összehasonlítása egy ismert célértékkel t.teszt(x, mu = érték)
Független kétmintás (Welch) Két különálló csoport, a varianciák esetleg egyenlőtlenek t.teszt(x, y)
Független kétmintás (összevont) Két különálló csoport azonos varianciával t.teszt(x, y, változó.egyenlő = IGAZ)
Páros Ugyanazokat az alanyokat kétszer mérték t.teszt(x, y, párosítva = IGAZ)
Egyoldalú Csak az egyik irányú különbség érdekel t.teszt(x, mu = érték, alternatíva = „nagyobb”)

Három csoporton túl a t-próba már nem megfelelő. Váltsunk a következőre: ANOVA teszt, ami az összesített hibaszázalékot 5 százalékon tartja ahelyett, hogy ismételt páros összehasonlítások során felfújná azt.

Egy minta T-teszt R-ben

A One Sample t-próba vagy a Student-féle teszt egy vektor átlagát hasonlítja össze egy elméleti átlaggal, Egy minta T-teszt R-ben. A t-próba kiszámításához használt képlet a következő:

Egy minta T-teszt R-ben

Itt,

  • Egy minta T-teszt R-ben az átlagra utal
  • Egy minta T-teszt R-ben az elméleti átlaghoz
  • s a szórás
  • n a megfigyelések száma.

A t-próba statisztikai szignifikanciájának értékeléséhez ki kell számítani a p-érték Az p-érték 0 és 1 között van, és a következőképpen értelmezhető:

  • A 0.05-nél kisebb p-érték azt jelenti, hogy elvethetjük a nullhipotézist. Fontos megjegyezni, hogy a H0 elvetése nem ugyanaz, mint a H1 igaznak bizonyítása, csupán azt jelenti, hogy az adatok valószínűtlenek H0 esetén.
  • A 0.05-nél nagyobb p-érték azt jelzi, hogy nincs elegendő bizonyítékod a nullhipotézis elvetésére.

A p-értéket úgy állíthatja össze, hogy megnézi a Student-eloszlásban a t-próba megfelelő abszolút értékét, amelynek szabadságfoka egyenlő Egy minta T-teszt R-ben

Például 5 megfigyelés alapján összehasonlítjuk a t-értékünket a Student-eloszlással 4 szabadságfok mellett, 95%-os megbízhatósági szinten. Ahhoz, hogy egy kétoldali tesztben elvessük a nullhipotézist, az abszolút t-értéknek meg kell haladnia a 2.776-ot.

Lásd az alábbi táblázatot:

Egy minta T-teszt R-ben

Egy minta T-teszt példa az R-ben

Tegyük fel, hogy Ön egy cookie-kat gyártó cég. Minden sütinek 10 gramm cukrot kell tartalmaznia. A sütiket egy gép állítja elő, amely egy tálban hozzáadja a cukrot, mielőtt mindent összekever. Úgy gondolja, hogy a gép nem ad hozzá 10 gramm cukrot minden sütihez. Ha a feltevés igaz, a gépet meg kell javítani. Harminc keksz cukorszintjét tárolta el.

Megjegyzések: Az rnorm() függvénnyel véletlenszerű vektort hozhatunk létre. Ez a függvény normál eloszlású értékeket generál. Az alap szintaxis a következő:

rnorm(n, mean, sd)
arguments
- n: Number of observations to generate
- mean: The mean of the distribution. Optional
- sd: The standard deviation of the distribution. Optional

Létrehozhat egy eloszlást 30 megfigyeléssel, 9.99-es átlaggal és 0.04-es szórással.

set.seed(123)
sugar_cookie <- rnorm(30, mean = 9.99, sd = 0.04)
head(sugar_cookie)

output:

## [1]  9.967581  9.980793 10.052348  9.992820  9.995172 10.058603

Egymintás t-próbával ellenőrizheti, hogy a cukorszint eltér-e a receptben megadottól. Felállíthat egy hipotézis tesztet:

  • H0: Az átlagos cukorszint 10
  • H1: Az átlagos cukorszint eltér 10-től

0.05-ös szignifikanciaszintet használ.

# H0 : mu = 10
t.test(sugar_cookie, mu = 10)

Itt van a kimenet:

Egy minta T-teszt példa az R-ben

Az egymintás t-próba p-értéke 0.1079, ami meghaladja a 0.05-ös küszöbértéket. Az átlag 95 százalékos konfidenciaintervalluma 9.973 és 10.002 gramm között van, és tartalmazza a 10-es célértéket. Ezért a H0 nem utasítható el: nincs elegendő bizonyíték arra, hogy a gép eltér a recepttől.

Független kétmintás t-próba R-ben

A független, kétmintás t-próba a leggyakrabban használt változat, és akkor alkalmazható, ha a két mérési sorozat különböző alanyoktól származik: két műhelytől, két géptől, két kezelőkartól.

Tegyük fel, hogy egy gyár két gyártósort üzemeltet, és tudni szeretnéd, hogy az üvegeket ugyannyi súllyal töltik-e meg.

set.seed(123)
line_a <- rnorm(25, mean = 500, sd = 8)
line_b <- rnorm(25, mean = 505, sd = 8)

# Welch test, the safe default
t.test(line_a, line_b)

# Pooled test, only when the variances are equal
t.test(line_a, line_b, var.equal = TRUE)

Olvasd be a kimenetet négy lépésben.

  1. t a két átlag közötti rés szabványosított mérete. Az előjele csak a vektorok átadásának sorrendjét tükrözi.
  2. df a szabadsági fokok. A Welch-féle próba tört értéket ad; az összevont próba pedig n1 + n2 – 2 egész számot eredményez.
  3. p-érték Mekkora a valószínűsége annak, hogy ekkora különbséget látnánk, ha a valódi átlagok azonosak lennének.
  4. Megbízhatósági intervallum határolja a valódi különbséget. Amikor nullát tartalmaz, a különbség ezen a szinten nem szignifikáns.

Ha az adataid egyetlen adatkeretben helyezkednek el, amelyben egy értékoszlop és egy tényezőoszlop található, akkor használd a képletfelületet, amely könnyebben olvasható, és elkerülhető az adatok kézi felosztása:

t.test(weight ~ line, data = jars)

Melyik verziót kell használni. Hagyja a var.equal függvényt az alapértelmezett FALSE értéken, kivéve, ha tesztelte és megerősítette az egyenlő varianciákat. A Welch-korrekció szinte semmibe sem kerül, ha a varianciák megegyeznek, és megvédi Önt, ha nem.

Párosított T-teszt R-ben

A párosított t-próba, más néven függő mintás t-próba, akkor alkalmazható, ha ugyanazt a csoportot kétszer mérik. Tipikus alkalmazások:

  • A / B tesztelés: Hasonlítson össze két változatot
  • Esettanulmányokugyanazon alanyok kezelése előtt és után

Párosított T-teszt példa az R-ben

Egy italgyártó cég érdeklődik egy akciós program teljesítményéről az eladásokon. A cég úgy döntött, hogy követi az egyik üzletének napi eladásait, ahol a programot népszerűsítik. A program végén a cég azt szeretné tudni, hogy van-e statisztikai különbség az üzlet program előtti és utáni átlagos eladásai között.

  • a cég tracminden nap nyomon követtem az eladásokat a program indulása előtt. Ez az első vektorunk.
  • A programot egy hétig reklámozzák, és minden nap rögzítik az eladásokat. Ez a második vektorunk.
  • Végezze el a t-tesztet, hogy megítélje a program hatékonyságát. Ezt páros t-tesztnek nevezzük, mivel mindkét vektor értéke ugyanabból az eloszlásból származik (azaz ugyanabból a boltból).

A hipotézis tesztelése a következő:

  • H0: Nincs különbség az átlagban
  • H1: A két eszköz különbözik

Ne feledjük, hogy a klasszikus t-próba ismeretlen, de azonos varianciát feltételez mindkét csoportban. A valós adatok ritkán felelnek meg ennek a feltételnek, és a különbség figyelmen kívül hagyása torzíthatja az eredményt.

A megoldás a Welch-féle t-próba, amely enyhíti az egyenlő variancia feltételezését. Az R alapértelmezés szerint alkalmazza, mivel a var.equal HAMIS, hacsak másképp nem jelezzük. Ebben az adathalmazban mindkét vektor azonos szórással lett generálva, így biztonságosan beállíthatjuk a var.equal = TRUE értéket.

Létrehozunk két véletlenszerű vektort egy Gauss-eloszlásból, amelyek magasabb átlagértékkel rendelkeznek a program utáni eladásokhoz.

set.seed(123)
# sales before the program
sales_before <- rnorm(7, mean = 50000, sd = 50)
# sales after the program.This has higher mean
sales_after <- rnorm(7, mean = 50075, sd = 50)
# draw the distribution
t.test(sales_before, sales_after,var.equal = TRUE)

Párosított T-teszt példa az R-ben

A p-érték 0.04606, éppen a 0.05-ös küszöbérték alatt, tehát elvetjük a H0-t, és arra a következtetésre jutunk, hogy a két átlag szignifikánsan különbözik. Úgy tűnik, hogy a diszkontprogram fellendítette az eladásokat.

⚠️ Fontos: a fenti hívás a két vektort a következőképpen hasonlítja össze: független minták. Mivel mindkét sorozat ugyanazon a műhelyen végzett mérés, a statisztikailag helyes becslés hozzáadódik párosítva = IGAZ:

t.test(sales_before, sales_after, paired = TRUE)

A párosított forma a napi különbségek átlagát teszteli két átlag különbsége helyett. Eltávolítja a mindkét vektor által megosztott üzletszintű eltérést, így nagyobb statisztikai ereje van.

Hogyan ellenőrizzük a T-teszt feltételezéseit R-ben?

Egy t-próba p-értéke csak akkor értelmes, ha a feltételezései érvényesek. Mindegyikre vonatkozik közvetlen ellenőrzés.

1. Normalitás. Az egy- és kétmintás tesztek feltételezik, hogy az értékek megközelítőleg normálisak; a párosított teszt a következőket feltételezi: különbségek vannak. Vizsgáljon meg egy QQ diagramot, és erősítse meg a Shapiro-Wilk teszttel:

qqnorm(sugar_cookie); qqline(sugar_cookie)
shapiro.test(sugar_cookie)

# for a paired design, test the differences
shapiro.test(sales_after - sales_before)

A 0.05 feletti Shapiro-Wilk p-érték azt jelenti, hogy a normalitás nem vethető el. Csoportonként több mint 30 megfigyelés esetén a centrális határeloszlás-tétel a t-próbát mindenképpen mérsékelt ferdülésig robusztussá teszi.

2. Egyenlő variancia. Csak az összevont kétmintás tesztnek van erre szüksége. Teszteld F-próbával:

var.test(line_a, line_b)

A 0.05 feletti p-érték egyenlő varianciákat támogat, ami indokolja a var.equal = TRUE állítást.

3. Függetlenség. Ez a tanulmány felépítéséből következik, és utólag nem tesztelhető. Ha ugyanaz az alany mindkét vektorhoz hozzájárul, akkor a független teszt egyszerűen rossz eszköz, és a párosított = IGAZ függvényre van szükség.

Amikor egy feltételezés kudarcot vall. Kis mintájú, egyértelműen nem normális adatok esetén használjuk a rang alapú alternatívákat: a wilcox.test(x, y) a kétmintás t-próbát, a wilcox.test(x, y, paired = TRUE) pedig a párosított verziót helyettesíti. Egyik sem követeli meg a normalitás esetét, bár mindkettő kis mértékben csökkenti a teljesítményt, ha az adatok valójában normálisak.

T-teszt R-ben: Főbb tanulságok és tesztreferencia

  • A statisztikai következtetés az adatok eloszlására vonatkozó következtetések levonásának művészete.
  • A T-teszt a következtetési statisztikák családjába tartozik. Általában arra használják, hogy megtudják, van-e statisztikai különbség két csoport átlaga között.
  • Az egymintás t-próba, vagy Student-próba, egy vektor átlagát hasonlítja össze egy elméleti átlaggal.
  • A párosított t-próba, vagy függő mintás t-próba akkor alkalmazható, ha ugyanazt a csoportot kétszer mérik.

Az alábbi táblázat összefoglalja a fent említett teszteket:

Tesztelés Tesztelendő hipotézis p-érték Code Opcionális érv
egymintás t-próba Egy vektor átlaga eltér az elméleti átlagtól 0.05
t.test(x, mu = mean)
páros minta t-próba Az A átlag különbözik a B átlagtól ugyanazon alanyok esetében 0.05
t.test(A, B, paired = TRUE)
var.equal = TRUE

Ha egy független, kétmintás tesztben egyenlő varianciákat feltételez, akkor a var.equal = TRUE értéket állítsa be. Hagyja az alapértelmezett FALSE értéken a biztonságosabb Welch-korrekció futtatásához.

GYIK

A párosított teszt az egyének közötti különbségeket elemzi, amikor ugyanazokat az alanyokat kétszer mérik. A független teszt két különálló csoportot hasonlít össze. A párosított adatokon végzett független teszt használata információkat vet el és csökkenti a statisztikai erőt.

Használd a Welch-et, ha még nem erősítetted meg az egyenlő varianciákat, ezért az R alapértelmezés szerint alkalmazza. Szinte semmilyen energiába nem kerül, ha a varianciák megegyeznek, és védi a hibaszázalékot, ha nem egyeznek.

Kis minták esetén váltsunk a Wilcoxon rangösszeg-próbára vagy az előjeles rangpróbára a wilcox.test() függvénnyel. Nagyobb minták esetén a centrális határérték-tétel a normalitástól való mérsékelt eltérések ellenére is megbízhatóan tartja a t-próbát.

A csapatok párosított t-próbákat használnak két modell összehasonlítására azonos keresztvalidációs ciklusokon keresztül, és annak megítélésére, hogy egy A/B kísérlet eredménye valós-e. A párosított terv eltávolítja az összehasonlításból a ciklusok közötti eltéréseket.

Igen. A mesterséges intelligencia asszisztensek el tudják magyarázni a szabadsági fokokat, le tudják fordítani a konfidenciaintervallumokat egyszerű nyelvre, és figyelmeztetni tudnak, ha rossz variánst választottak. Minden leolvasást megerősíthetnek a saját shapiro.test() és var.test() eredményeikkel.

Foglald össze ezt a bejegyzést a következőképpen: