testy statystyczne

Test na 1 średnią

Testy parametryczne

T.Test


Przykład 1

Wiemy, że średni czas świecenia żarówki wynosi wg normy 1000 godzin. Po wprowadzeniu zmian w technologii postanowiono sprawdzić, czy zmiany te poprawiły normę. Czas pracy 10 żarówek: 1015,1017,1045,1058,1147,987,1295,1054,884,978

czas <- c(1015,1017,1045,1058,1147,987,1295,1054,884,978)
t.test(czas, mu=1000, alternative='greater', conf.level=0.95) ##norma=1000h, sprawdzymy czy jest więcej
## 
##  One Sample t-test
## 
## data:  czas
## t = 1.3823, df = 9, p-value = 0.1001
## alternative hypothesis: true mean is greater than 1000
## 95 percent confidence interval:
##  984.3458      Inf
## sample estimates:
## mean of x 
##      1048
power.t.test(n=10,delta=48,sd=109.8089,sig.level=0.05,power=NULL,type=c("one.sample"),alternative=c("one.sided")) ##sprawdzenie mocy testu
## 
##      One-sample t test power calculation 
## 
##               n = 10
##           delta = 48
##              sd = 109.8089
##       sig.level = 0.05
##           power = 0.3570032
##     alternative = one.sided

Przykład 2 Z LABÓW

Dane dotyczą czasu snu studenta po zażyciu leku (grupa 2) lub po placebo (grupa 1). Sprawdź, czy prawdziwe jest podejrzenie, iż przeciętny czas snu uzyskany dzięki zażyciu nowego leku jest istotnie wyższy od 2 godzin.

1. Statytyki opisowe (kod w rstudio)

get_summary_stats(sleep)
## # A tibble: 1 x 13
##   variable     n   min   max median     q1    q3   iqr   mad  mean    sd    se
##   <chr>    <dbl> <dbl> <dbl>  <dbl>  <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 extra       20  -1.6   5.5   0.95 -0.025   3.4  3.42  1.56  1.54  2.02 0.451
## # ... with 1 more variable: ci <dbl>

2. Obserwacje odstające

sleep %>% 
group_by(group) %>%
identify_outliers("extra")
## [1] group      extra      ID         is.outlier is.extreme
## <0 wierszy> (lub 'row.names' o zerowej długości)

Wynik: Brak obserwacji odstających.

3. Normalność + (wykres ggqqplot)

sleep %>%
group_by(group) %>%
shapiro_test(extra)
## # A tibble: 2 x 4
##   group variable statistic     p
##   <fct> <chr>        <dbl> <dbl>
## 1 1     extra        0.926 0.408
## 2 2     extra        0.919 0.351
ggqqplot(sleep, x = "extra")

Wynik: Dla obu grup badanych nie odrzucamy hipotezy zerowej. Na wykresie nie ma znaczcych odchyleń od normalności.

3. T.Test

Założenie: Przecietny czas snu jest wyższy o 2 h po zażyciu leku.

wyniki<-
  sleep %>%
  filter(group=="2") %>%
  select("extra") %>%
  t.test(mu=2,alternative="greater",conf.level=0.95)

wyniki
## 
##  One Sample t-test
## 
## data:  .
## t = 0.52119, df = 9, p-value = 0.3074
## alternative hypothesis: true mean is greater than 2
## 95 percent confidence interval:
##  1.169334      Inf
## sample estimates:
## mean of x 
##      2.33

4. Analiza mocy testu - pakiet pwr

wyliczenie delty (różnica między średnią wyniku a założeniem) : 2.33 - 2 = 0.33

wyliczenie power (1-type II error)=0,9

power.t.test(power=0.9, delta= 0.33, sd= 2, sig.level=0.05,type="one.sample",alternative="one.sided")
## 
##      One-sample t test power calculation 
## 
##               n = 315.9159
##           delta = 0.33
##              sd = 2
##       sig.level = 0.05
##           power = 0.9
##     alternative = one.sided

lub

moc<-pwr.t.test(power=0.9, d=0.33/2, sig.level=0.05,type="one.sample",alternative="greater")
plot(moc)

***

Test dla wariancji - sigma.test


Przykład 1 - odchylenie st.

Zbadano czas (godz.) przeznaczony przez 150 losowo wybranychstudentów na naukę statystyki dzień przed kolokwium. Czy zaprezentowane wyniki mogą być podstawą do twierdzenia, że odchylenie standardowe czasu przeznaczonego na naukę statystyki na dzień przed kolokwium istotnie przekracza 3 godziny? Dane podane w tabeli z przedzałami czasowymi co 2 h

czas<-rep(c(1,3,5,7,9,11),c(13,22,41,38,23,13)) #dane zagregowane
library(TeachingDemos) #konieczna instalacja pakietu
sigma.test(czas,sigma=3,alternative="greater",conf.level=0.95)
## 
##  One sample Chi-squared test for variance
## 
## data:  czas
## X-squared = 126, df = 149, p-value = 0.9145
## alternative hypothesis: true variance is greater than 9
## 95 percent confidence interval:
##  6.353463      Inf
## sample estimates:
## var of czas 
##    7.610738

Przykład 2 - wariancja

Wykonano 15 pomiarów czasu zaparzania średniej kawy latte przez nowo zakupiony ekspres do kawy otrzymując w sekundach: 12; 18; 16; 15; 14; 11; 9; 11; 13; 17; 15; 12; 13; 14; 10 Zakładając, że rozkład czasu zaparzania kawy jest normalny, na poziomie istotności 0,05 zweryfikować hipotezę, że wariancja czasu zaparzania średniej kawy latte jest istotnie mniejsza od 6 (sekund)2.

library(TeachingDemos)
czas<-c(12,18,16,15,14,11,9,11,13,17,15,12,13,14,10)
sigma.test(czas,sigmasq=6,alternative="less",conf.level=0.95) #sigmaSQ
## 
##  One sample Chi-squared test for variance
## 
## data:  czas
## X-squared = 15.556, df = 14, p-value = 0.6587
## alternative hypothesis: true variance is less than 6
## 95 percent confidence interval:
##   0.00000 14.20462
## sample estimates:
## var of czas 
##    6.666667

Testy dla frakcji w populacji

(część dużej próby) chi-kwadrt - prop.testPrzy okazji kontroli artykułów spożywczych na podstawie próby liczącej 150 supermarketów otrzymano następujący rozkład częstości występowania w dostawie firmy A mleka w wadliwym opakowaniu: 0 razy - 28, 1 raz - 38, 2 razy - 24. Firma A przypuszcza, że udział dostaw, w których w jednej dostawie są uszkodzone mniej niż 3 opakowania, wynosi więcej niż 72%. Sprawdzić to przypuszczenie na poziomie istotności 0,01. Sklepy max 2 wadliwe: 90 | Reszta: 60 H0: 150 klepów 72% = 108 (max 2 wadliwe) | Reszta: 42

prop.test(90,150,0.72,alternative='greater',conf.level=0.99)
## 
##  1-sample proportions test with continuity correction
## 
## data:  90 out of 150, null probability 0.72
## X-squared = 10.127, df = 1, p-value = 0.9993
## alternative hypothesis: true p is greater than 0.72
## 99 percent confidence interval:
##  0.5016945 1.0000000
## sample estimates:
##   p 
## 0.6

binomal - binom.test

W ramach sondaży przedwyborczych partia X, licząca na poparcie 25% wyborców, chcąc sprawdzić swoje przypuszczenia, przeprowadziła krótką ankietę. Spośród 30 wylosowanych osób 9 zadeklarowało jej poparcie.

binom.test(9,30,p=0.25,alternative=c("two.sided"),0.95)
## 
##  Exact binomial test
## 
## data:  9 and 30
## number of successes = 9, number of trials = 30, p-value = 0.529
## alternative hypothesis: true probability of success is not equal to 0.25
## 95 percent confidence interval:
##  0.1473452 0.4939590
## sample estimates:
## probability of success 
##                    0.3

Porównywanie 2 populacji

Testy parametryczne

Próby niezależne


Przykład 1 - t.test

Sprawdzano, czy czas przejazdu tramwajem odcinka Dworzec Główny – Opera w Gdańsku w czasie godzin szczytu jest porównywalny z czasem przejazdu tego odcinka samochodem osobowym. Zebrane wyniki (w minutach) były następujące: Tramwajem: 9; 10; 8; 11; 7; 6 Samochodem: 7; 6; 5; 4; 5; 8. Na poziomie istotności α=0,05 zweryfikuj hipotezę o jednakowej wartości przeciętnej czasów przejazdu tramwajem i samochodem tego odcinka w Gdańsku w czasie godzin szczytu.

tramwaj<- c(9,10,8,11,7,6)
auto<-c(7,6,5,4,5,8)
shapiro.test(tramwaj) #normalność
## 
##  Shapiro-Wilk normality test
## 
## data:  tramwaj
## W = 0.98189, p-value = 0.9606
shapiro.test(auto)
## 
##  Shapiro-Wilk normality test
## 
## data:  auto
## W = 0.95801, p-value = 0.8043
var.test(tramwaj,auto)
## 
##  F test to compare two variances
## 
## data:  tramwaj and auto
## F = 1.6154, num df = 5, denom df = 5, p-value = 0.6115
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
##   0.2260423 11.5441553
## sample estimates:
## ratio of variances 
##           1.615385
t.test(tramwaj,auto,var.equal=TRUE)
## 
##  Two Sample t-test
## 
## data:  tramwaj and auto
## t = 2.744, df = 10, p-value = 0.02069
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  0.5013049 4.8320284
## sample estimates:
## mean of x mean of y 
##  8.500000  5.833333

Wynik: Próby niezależne. Taka sama ilosc obserwacji. Normalność w obu przypadkach. Znamy wiarancje. Wariancja jest jednorodna - T.TEST ***

Pzykład 2 - t.test wspólna wariancja LABKI

Dane dotyczą charakterystyk różnych modeli aut. Hipoteza: Czy istotna jest różnica w spalaniu samochodów z automatyczną i manualną skrzynią biegów. am -> 1=automatyczna, 2=manualna, mpg -> spalanie

1. Normalność próby

attach(mtcars) shapiro_test(mpg[group==“2”]) shapiro_test(mpg[group==“1”]) Wniosek: P.value > 0.05 dla obu rodzajów silnika

2. Jednorodność wariancji

attach(mtcars)
## Następujący obiekt został zakryty z package:ggplot2:
## 
##     mpg
var(mpg[am==0])
## [1] 14.6993
var(mpg[am==1])
## [1] 38.02577
var.test(mpg[am==1], mpg[am==0])
## 
##  F test to compare two variances
## 
## data:  mpg[am == 1] and mpg[am == 0]
## F = 2.5869, num df = 12, denom df = 18, p-value = 0.06691
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
##  0.934280 8.040391
## sample estimates:
## ratio of variances 
##           2.586911

Wniosek: Wariancje nie są jednorodne.

3. T.Test ze wspólną wariancją

attach(mtcars)
## Następujące obiekty zostały zakryte z mtcars (pos = 3):
## 
##     am, carb, cyl, disp, drat, gear, hp, mpg, qsec, vs, wt
## Następujący obiekt został zakryty z package:ggplot2:
## 
##     mpg
t.test(var.equal=TRUE, PAIRED=FALSE,
       mpg[am==0], mpg[am==1], alternative="two.sided")
## 
##  Two Sample t-test
## 
## data:  mpg[am == 0] and mpg[am == 1]
## t = -4.1061, df = 30, p-value = 0.000285
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -10.84837  -3.64151
## sample estimates:
## mean of x mean of y 
##  17.14737  24.39231

Wniosek: Odrzucamy Ho - spalanie samochodów w zależności od skrzyni biegów istotnie wpływa na spalanie. ***

Przykład 3 - wilcox.test LABKI

Załóżmy, że jesteś badaczem rynku i chcesz porównać doświadczenia 2 różnych grup losowo wybranych osób z dwoma różnymi dostawcami usług współdzielenia skuterów. Czy powiedziałbyś, że istnieje znacząca różnica w ocenach satysfakcji tych osób z usługodawców oferujących wynajem skuterów (użyj alfa=0.05)?

1. Normalność

attach(skutery_2_) shapiro.test(Yamaha) shapiro.test(Suzuki)

Wniosek: P.value < 0.05 dla Suzuki - rozkłady nie są normalne

2. Wilcox.test - dla rozkładów nienormalnych

wilcox.test(Yamaha,Suzuki,alternative = “two.sided” )

Wniosek: istnieje znacząca różnica w ocenach satysfakcji tych dwóch marek motorów.

Próby zależne

Pzykład 1 - PRÓBY ZAKLEŻNE LABKI

Dane dotyczą czasu snu studenta po zażyciu leku (grupa 2) lub po placebo (grupa 1). Hipoteza: Długośc snu po zażyciu leku jest znacząco dłuższy niż w przypadku placebo.

1. Normalność

attach(sleep)
shapiro.test(extra[group=="1"])
## 
##  Shapiro-Wilk normality test
## 
## data:  extra[group == "1"]
## W = 0.92581, p-value = 0.4079
shapiro.test(extra[group=="2"])
## 
##  Shapiro-Wilk normality test
## 
## data:  extra[group == "2"]
## W = 0.9193, p-value = 0.3511

Wniosek: P.value > 0.05 w obu pzypadkach

** 2. T.Test**

attach(sleep)
## Następujące obiekty zostały zakryte z sleep (pos = 3):
## 
##     extra, group, ID
t.test(paired=TRUE,extra[group=="2"], extra[group=="1"], alternative = "greater")
## 
##  Paired t-test
## 
## data:  extra[group == "2"] and extra[group == "1"]
## t = 4.0621, df = 9, p-value = 0.001416
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
##  0.8669947       Inf
## sample estimates:
## mean of the differences 
##                    1.58

Wniosek: p.value = 0 - ilośc snu jest większa przy braniu leku


Testy nieparametryczne

Przykład 1 prop.test LABKI

SKALA NOMINALNA - 2 PRÓBY NIEZALEZNE

Przeprowadzono ankietę na 424 studentach Politechniki Gdańskiej. Hipoteza: Studentki dużo częściej w ogóle nie ćwiczą fizycznie niż studenci(wykorzystaj poziom istotności 0.05).

Określenie ile jest kobiet i mężczyzn:

attach(dane_2) tab<-table(Exer,Sex) View(tab) Wniosek: 211 kobiet 247 mężczyzn. 22 kobiet nie ćwiczy. 22 mężczyzn nie ćwiczy

Tabelka 2x2

K<-c(22,211)
M<-c(22,247)
x<-c("None","All")
con.tab<-data.frame(M,K,row.names = x)
con.tab
##        M   K
## None  22  22
## All  247 211

prop.test

never<-c(22,22)
all<-c(211,247)
prop.test(never,all,alternative="greater",conf.level=0.9)
## 
##  2-sample test for equality of proportions with continuity correction
## 
## data:  never out of all
## X-squared = 0.15291, df = 1, p-value = 0.3479
## alternative hypothesis: greater
## 90 percent confidence interval:
##  -0.02478463  1.00000000
## sample estimates:
##     prop 1     prop 2 
## 0.10426540 0.08906883

Różnica nie jest istotna statystyvzne (p.value)

Moc testu

power.prop.test(p1=0.10426540,p2=0.08906883 ,sig.level=0.1,power=0.9,alternative="one.sided")
## 
##      Two-sample comparison of proportions power calculation 
## 
##               n = 4966.541
##              p1 = 0.1042654
##              p2 = 0.08906883
##       sig.level = 0.1
##           power = 0.9
##     alternative = one.sided
## 
## NOTE: n is number in *each* group

Wniosek: trzeba przebadać 4967 studentów, żeby otrzymać moc testu = 90%

Dodatkowe Tabelka 2x2

K<-c(22,211)
M<-c(22,247)
x<-c("None","All")
con.tab<-data.frame(M,K,row.names = x)
con.tab
##        M   K
## None  22  22
## All  247 211
chisq_test(con.tab)
## # A tibble: 1 x 6
##       n statistic     p    df method          p.signif
## * <dbl>     <dbl> <dbl> <int> <chr>           <chr>   
## 1   502     0.116 0.733     1 Chi-square test ns

Przykład 2 prop.test

Wysunięto przypuszczenie, że palacze papierosów stanowią jednakowy odsetek wśród mężczyzn i kobiet. W celu sprawdzenia tej hipotezy wylosowano 500 mężczyn i 600 kobiet. Okazało się, że wśród mężczyzn było 200 palaczy, a wśród kobiet 250.

prop.test(x = c(200,250), n = c(500,600))
## 
##  2-sample test for equality of proportions with continuity correction
## 
## data:  c(200, 250) out of c(500, 600)
## X-squared = 0.24824, df = 1, p-value = 0.6183
## alternative hypothesis: two.sided
## 95 percent confidence interval:
##  -0.07680992  0.04347659
## sample estimates:
##    prop 1    prop 2 
## 0.4000000 0.4166667