Test t-Studenta - wariant 1
Wariant 1 będzie dotyczył testu t-Studenta dla testowania jednej próby. Jest on używany w sytuacji gdy chcemy porównać średnią próby .
Na przykład:
Testowanie skuteczności nowego leku: Załóżmy, że średni czas reakcji na pewne leczenie jest znany (np. 30 minut). Chcemy sprawdzić, czy nowy lek skraca ten czas. Bierzemy próbkę pacjentów, podajemy im nowy lek i mierzymy czas reakcji, a następnie testujemy hipotezę, czy średnia z próby jest mniejsza niż 30 minut.
Porównanie średniej w ocenie produktów: Firma przeprowadzając na przykład ankietę zna średnią ocenę swojego starego produktu (np. 4 na 5). Następnie, chce sprawdzić, czy nowy produkt ma wyższą ocenę. W tym celu mogą przeprowadzić test dla średniej oceny nowego produktu.
Mała liczebność próby Test t-Studenta dla jednej próby jest szczególnie przydatny, gdy mamy małą liczbę obserwacji (zwykle \(n<30\)).
Nieznana wariancja Test t-Studenta jest stosowany, gdy wariancja populacji (\(\sigma^2\)) nie jest znana, co jest bardzo częstą sytuacją w badaniach empirycznych. W takich przypadkach używamy estymatora wariancji z próby (\(S^2\)) zamiast rzeczywistej wariancji populacji.
Zadanie 1
Wygenerujmy \(n=20\) obserwacji z rozkładu \(N(d,5)\), gdzie \(d=1\). Przetestujemy \(H_0: d\leq 0\) przeciwko \(H_1: d>0\). Wykonaj test t-studenta dwoma sposobami: pisząc cały test samodzielnie i używając gotowej funkcji.
Kroki:
Określić jaki mamy test.
Wycentrowanie obserwacji przy założeniu hipotezy zerowej.
Centrujemy \(Y=(Y_1, \dots, Y_n)= (X_1-d, \dots, X_n-d)\).
Teraz \(\sum_{i=1}^nY_i\sim N(0,n\sigma^2)\). Zatem \(\frac{1}{sqrt{n}}\sum_{i=1}^nY\sim N(0,\sigma^2)\).
- Obliczyć statystykę testową i określić jej rozkład.
Statystyka testowa \[U(Y)=\frac{\frac{1}{\sqrt{n}}\sum_{i=1}^nY_i}{\sqrt{\frac{1}{n-1}\sum_{i=1}^n(Y_i-\bar{Y})^2}}\sim t_{n-1}\]
- Wyznaczenie obszaru krytycznego.
Na wykładzie zostało pokazane, że poniższy test jest jednostajnie najmocniejszy wśród testów nieobciążonych.
\[\phi(X)=1,\quad U(Y)> c_{\alpha},\] gdzie \(c_{\alpha}=F^{-1}_{t_{n-1}}(1-\alpha)\).
- P-wartość
Skoro \(U(Y)=F^{-1}(1-p(Y))\), to p-wartość wyraża się poniższym wzorem \[p(Y)=1-F_{t_{n-1}}(U(Y)).\]
set.seed(5)
n<-20
m<-0
X<-rnorm(n,1,5)
Y=X-m
test_statistic<-sqrt(1/n)*sum(Y)/sqrt(sum((Y-mean(Y))^2)/(n-1))
p<-1-pt(test_statistic,n-1)
test_statistic
## [1] -0.3876304
## [1] 0.6487011
Duża p-wartość świadczy o tym, że nie mamy podstaw do odrzucenia hipotezy zerowej
W języku R jest również dostępna gotowa funkcja
t.test()
.
##
## One Sample t-test
##
## data: X
## t = -0.38763, df = 19, p-value = 0.6487
## alternative hypothesis: true mean is greater than 0
## 95 percent confidence interval:
## -2.19954 Inf
## sample estimates:
## mean of x
## -0.4027889
Zadanie 1 cd. Sporządźmy teraz wykres mocy w zależności od \(d\in[0,10]\) oraz \(s\in [1, 20]\).
W tym celu utworzymy siatkę \((d,s)\), gdzie \(d \in [0,10]\) oraz \(s\in[1,20]\). Następnie obliczymy moc empiryczną dla każdego punktu siatki i utworzymy wykres ciepła.
d <- seq(0,10, by=0.5)
s <- seq(1,20)
Moc<- matrix(0,nrow=20,ncol=21)
mc = 1000
alpha=0.05
for (j in 1:length(d)){
for (k in 1:length(s)) {
M <- 0
for (i in 1:mc){
X <- rnorm(n,j,k)
test_statistic <- sqrt(1/n) * (sum(X - 0)) / sqrt(sum((X - mean(X))^2) / (n-1))
P=1-pt(test_statistic,n-1)
if(P< alpha){
M <- 1+M
}
}
Moc[k,j]<-M/mc
}
}
heatmap(Moc,Rowv=NA,Colv=NA,scale="none", xlab="d", ylab="s")
Zauważmy, że im większa wariancja tym wolniej rośnie moc.
Test t-studenta - wariant 2
Wariant ten jest używany w kontekście testowania hipotezy dotyczącej średniej populacji \(m\), szczególnie gdy chcemy przetestować, czy średnia jest równa pewnej wartości \(m_0\). Czyli \(H_0: m=m_0\) przy alternatywie \(H_1: m\neq m_0\). Tutaj również przyjmujemy założenie, że dane pochodzą z rozkładu normalnego o nieznanych parametrach.
Zadanie 2
\(30\) samochodów użyto do zbadania dwóch rodzajów paliwa pod kątem spalania. Samochody zatankowały \(10\) litrów paliwa typu \(1\) i jeździły po torze do momentu, aż paliwo się skończyło. Zanotowano liczę przejechanych kilometrów. Później te same samochody zatankowały paliwo typu \(2\) i powtórzono eksperyment. Na podstawie zebranych wyników przetestuj czy te dwa typy paliwa różnią się między sobą. Dane znajdują się w pliku Baza 2.1.
Uwaga: Aby porównać średnie dla dwóch różnych typów paliwa musimy założyć, że mają one jednorodna wariancję.
Niech \(X=Y_i-Z_i\), gdzie \(Y_i\) będą dotyczyć danych dotyczących spalania paliwa typu \(1\), a \(Z_i\) paliwa typu \(2\).
Wtedy testujemy: \(H_0: m=0\), przeciwko \(H_1: m\neq 0\), gdzie \(m\) jest średnią dla próby \(X\).
Użyjemy tej samej statystyki testowej co w wariancie 1: \[T(X)=\frac{\sqrt{\frac{1}{n}}\sum_{j=1}^n(X_j-m_0)}{\sqrt{\frac{1}{n-1}\sum_{j=1}^n\left(X_j-\bar{X}\right)^2}}.\] W tym przypadku mamy test obustronny postaci: \[\phi(X)=1\quad, |T(X)|>c_{\alpha},\] gdzie \(c_{\alpha}=F^{-1}_{t_{n-1}}(1-\frac{1}{2})\).
Test ten jest jednostajnie najmocniejszy wśród testów nieobciążonych.
## [1] 286.5844
## [1] 387.0433
X<-spalanie$"Typ 1" - spalanie$"Typ 2"
n<-length(X)
test_statistic<-sqrt(1/n)*(sum(X-0))/sqrt(sum((X-mean(X))^2)/(n-1))
P<-2*(1-pt(abs(test_statistic),n-1))
mean(X)
## [1] -2.80619
## [1] -0.6203171
## [1] 0.5398936
Zatem nie mamy podstaw do odrzucenia. Okazuje się, że 2 metry różnicy w praktyce nie jest statystycznie istotne.
Możemy również użyć gotowej funkcji t.test()
.
##
## One Sample t-test
##
## data: X
## t = -0.62032, df = 29, p-value = 0.5399
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
## -12.05840 6.44602
## sample estimates:
## mean of x
## -2.80619
Zadanie
Wygenerujmy \(n=20\) obserwacji z
rozkładu \(N(d,5)\), gdzie \(d=1\). Oblicz empiryczną moc dla testu
\(H_0: d\leq 0\) przeciwko \(H_1: d>0\). Wygeneruj histogram
p-wartości.
Wygenerujmy \(n=20\) obserwacji z
rozkładu \(N(d,5)\), gdzie \(d\in[-2,2]\). Narysuj krzywą mocy dla \(H_0: d= 0\) przeciwko \(H_1: d\neq0\).
Test t-Studenta - wariant 3
W tym wariancie rozważamy problem testowania hipotezy dotyczącej różnicy średnich dwóch niezależnych próbek, pochodzących z rozkładów normalnych i posiadających jednorodną wariancję.
\[X_1, \dots, X_m\sim N(m_x, \sigma^2)\]
\[Y_1, \dots, Y_n\sim N(m_y, \sigma^2)\] Testujemy: \[H_0: m_y\leq m_x\qquad H_1: m_y>m_x.\]
Ponieważ próby są różnej liczności, to nie możemy postąpić tak jak w poprzednim zadaniu. Dlatego tutaj będziemy porównywać różnicę średnich. Na początku wyznaczmy rozkład \(\bar{X}-\bar{Y}\).
\[E[\bar{X}-\bar{Y}]=E[\bar{X}]-E[\bar{Y}]=m_x-m_y\] \[Var[\bar{X}-\bar{Y}]=Var[\bar{X}]+Var[\bar{Y}]=\frac{\sigma^2}{n}+\frac{\sigma^2}{m}=\frac{(m+n)\sigma^2}{mn}\] Zatem, \[(\bar{X}-\bar{Y})\sqrt{\frac{mn}{(m+n)}}\sim N(0,\sigma^2 )\]
Statystyka testowa jest postaci \[U(X,Y)=\frac{\sqrt{\frac{mn}{(m+n)}}\left(\bar{Y}-\bar{X}\right)}{\sqrt{\frac{1}{m+n-2}\left(\sum_{i=1}^m(X_i-\bar{X})^2+\sum_{j=1}^n(Y_j-\bar{Y})^2\right)}}\sim t_{m+n-2}.\] Wobec tego, test postaci \[\phi(X,Y)=1, \quad U(X,Y)>c_{\alpha},\] gdzie \(c_{\alpha}=F^{-1}_{t_{m+n-2}}(1-\alpha)\) jest testem jednostajnie najmocniejszym wśród testów nieobciążonych.
P- wartość: \[p(X)=1-F_{t_{n+m-2}}\left(U(X,Y)\right).\]
Zadanie 3
Aby zbadać skuteczność pewnego leku na cukrzycę przeprowadzono badanie na \(40\) zdrowych i \(34\) chorych na cukrzycę osobach. Osoby te przez tydzień jadły to samo. Osoby chore przyjmowały lek. Po tygodniu zbadano wszystkim poziom cukru we krwi na czczo. Wyniki zebrano w pliku Baza 2.2. Przetestować hipotezę o skuteczności leku przeciwko alternatywie o nieskuteczności leku.
## Zdrowi Chorzy
## Min. : 78.00 Min. : 71.00
## 1st Qu.: 83.75 1st Qu.: 95.25
## Median : 94.50 Median :102.00
## Mean : 94.22 Mean :101.44
## 3rd Qu.:100.50 3rd Qu.:109.75
## Max. :120.00 Max. :120.00
## NA's :6
X<-na.exclude(Baza$"Zdrowi")
Y<-na.exclude(Baza$"Chorzy")
nx<-length(X)
ny<-length(Y)
test_statistic<-sqrt((nx*ny)/(nx+ny))*((mean(Y)-mean(X))/sqrt((sum((X-mean(X))^2)+sum((Y-mean(Y))^2))/(nx+ny-2)))
p<-1-pt(test_statistic,nx+ny-2)
mean(Y)-mean(X)
## [1] 7.216176
## [1] 0.002969341
Odrzucamy hipotezę zerową na rzecz alternatywy. Pomimo zastosowania leku, poziom cukry był istotnie różny.
Możemy również użyć gotowej funkcji t.test()
.
##
## Two Sample t-test
##
## data: Y and X
## t = 2.8353, df = 72, p-value = 0.002969
## alternative hypothesis: true difference in means is greater than 0
## 95 percent confidence interval:
## 2.975291 Inf
## sample estimates:
## mean of x mean of y
## 101.4412 94.2250
Test t-studenta - wariant 4
Dla dwóch prób o rozkładzie normalnym i jednorodnej wariancji (tak, jak w wariancie 3), testujemy: \(H_0: m_y=m_x\), przeciwko \(m_x\neq m_y\).
Używamy tej samej statystyki co dla wariantu 3, tj \[U(X,Y)=\frac{\sqrt{\frac{mn}{(m+n)}}\left(\bar{Y}-\bar{X}\right)}{\sqrt{\frac{1}{m+n-2}\left(\sum_{i=1}^m(X_i-\bar{X})^2+\sum_{j=1}^n(Y_j-\bar{Y})^2\right)}}\sim t_{m+n-2}.\]
Test \(\phi(X,Y)=1\) dla \(|U(X,Y)|>c_{\alpha}\), gdzie \(c_{\alpha}=F^{-1}_{t_{m+n_2}}(1-\alpha/2)\) jest testem jednostajnie najmocniejszym wśród testów nieobciążonych.
P-wartość: \(p(X,Y)=2\left(1-F_{t_{m+n_2}}\left(U(X,Y)\right)\right).\)
Zadanie 4
Przetestować hipotezę o braku różnicy między grupami zdrowych i chorych przeciwko alternatywie, że jest istotna różnica dla zbioru danych Baza 2.2.xlsx.
Baza<- read_excel("Baza 2.2.xlsx")
X<-na.exclude(Baza$"Zdrowi")
Y<-na.exclude(Baza$"Chorzy")
nx<-length(X)
ny<-length(Y)
test_statistic<-sqrt((nx*ny)/(nx+ny))*((mean(Y)-mean(X))/sqrt((sum((X-mean(X))^2)+sum((Y-mean(Y))^2))/(nx+ny-2)))
p<-2*(1-pt(abs(test_statistic),nx+ny-2))
abs(mean(Y)-mean(X))
## [1] 7.216176
## [1] 0.005938681
Odrzucamy hipotezę zerową na rzecz alternatywy.
Używając gotowej t.test()
.
##
## Two Sample t-test
##
## data: Y and X
## t = 2.8353, df = 72, p-value = 0.005939
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## 2.142611 12.289742
## sample estimates:
## mean of x mean of y
## 101.4412 94.2250
Różnica pomiędzy wariantem 3 a wariantem 4
Zauważmy, że w zadaniu 3 sprawdzamy, czy lek nie powoduje wzrostu poziomu cukru, co jest testem jednostronnym. Natomiast, zadanie 4 koncentruje się na sprawdzeniu, czy istnieje jakakolwiek różnica w poziomie cukru między zdrowymi a chorymi, co jest testem dwustronnym.
Warto również pamiętać, o odporności testu t Studenta na naruszenie założenia normalności.
Zadanie
Aby zbadać skuteczność pewnego leku na cukrzycę przeprowadzono badanie na \(40\) zdrowych i \(34\) chorych na cukrzycę osobach. Osoby te przez tydzień jadły to samo. Osoby chore przyjmowały lek. Po tygodniu zbadano wszystkim poziom cukru we krwi na czczo. Wyniki zebrano w pliku Baza 2.2. Przetestować hipotezę o skuteczności leku przeciwko alternatywie o nieskuteczności leku.
Definiujemy zmienne \(X\) i \(Y\)na odwrót i używamy tej samej statystyki testowej. Wtedy, \(H_0: m_x\leq m_y\) przeciw \(H_1: m_x>m_y\). Zbuduj test lewostronny. Wyznacz p wartość i empiryczną moc testu.
## Zdrowi Chorzy
## Min. : 78.00 Min. : 71.00
## 1st Qu.: 83.75 1st Qu.: 95.25
## Median : 94.50 Median :102.00
## Mean : 94.22 Mean :101.44
## 3rd Qu.:100.50 3rd Qu.:109.75
## Max. :120.00 Max. :120.00
## NA's :6