Das hier ist eine semi-interaktive Formelsammlung über alle wichtigen Formeln der Statistik 1 Vorlesung. Zu den meisten Formeln und Tests sind entsprechende R Beispiele zur Berechnung beigefügt, diese am besten per Copy-Paste in RStudio einfügen und eigene Werte einsetzen. Alternativ kann das ganze Notebook in RStudio ausgeführt werden: rechts oben auf Code -> Download Rmd
klicken und die heruntergeladene Datei in RStudio öffnen.
Download für Offline-Nutzung: Rechtsklick irgendwo auf die Seite -> Speichern unter
-> Website, nur HTML
(wichtig). Anschließend das gespeicherte Dokument einfach mit dem Browser öffnen.
Falls zu unübersichtlich: rechts oben auf Code -> Hide all Code
klicken. Anschließend beim entsprechenden Abschnitt rechts auf Code
klicken, um die passenden Befehle wieder einzublenden.
Folgende Pakete werden zum Ausführen der Codebeispiele benötigt:
install.packages(c("DescTools", "effsize", "MBESS", "pwr"))
\[\large H(x_j)\]
vec = c("A","A","B","A","C","B")
table(vec)
\[\large H_{kum}(x_k) = \sum_{j=1}^{k} H(x_j)\]
vec = c("A","A","B","A","C","B")
cumsum(table(vec))
\[\large h(x_j) = \frac{H(x_j)}{n} \]
vec = c("A","A","B","A","C","B")
prop.table(table(vec))
\[\large h_{kum}(x_k) = \frac{H_{kum}(x_k)}{n} = \frac{\sum_{j=1}^{k} H(x_j)}{n}\]
vec = c("A","A","B","A","C","B")
cumsum(prop.table(table(vec)))
Die Messwertausprägung, die am häufigsten beobachtet wurde.
vec = c("A","A","B","A","C","B")
names(which.max(table(vec)))
Summe aller Messwerte geteilt durch Anzahl der Beobachtungen.
\[\large \bar{x} = \frac{1}{n}\sum_{i=1}^{n}x_i\]
vec = c(1,2,3,4,5,6)
mean(vec)
(Mindestend) 50% der Merkmalsträger haben einen Messwert, der kleiner oder gleich dem Median ist. Zur Berechnung müssen die Messwerte in aufsteigender Reihenfolge geordnet sein.
\[\large Md = \begin{cases} x_{(\frac{n+1}{2})} &\text{falls n ungerade} \\ \frac{x_{(\frac{n}{2})} + x_{(\frac{n}{2}+1)}}{2} &\text{falls n gerade} \end{cases}\]
vec = c(1,3,4,5,7)
median(vec)
\[\large s_{emp}^{2} = \frac{1}{n}\sum_{i=1}^{n} (x_i - \bar{x})^2\]
vec = c(1,2,3,4,5,6,7,10,12)
n = length(vec)
((n-1)/n)*var(vec)
\[\large s_{emp} = \sqrt{s_{emp}^{2}} = \sqrt{\frac{1}{n}\sum_{i=1}^{n} (x_i - \bar{x})^2}\]
vec = c(1,2,3,4,5,6,7,10,12)
n = length(vec)
sqrt(((n-1)/n)*var(vec))
vec = c(1,2,3,4,5,6,7,8,9,10,11,12)
quantile(vec, probs=c(0.25,0.5,0.75))
vec = c(1,2,3,4,5,6,7,8,9,10,11,12)
IQR(vec, type=6)
vec = c(1,1,1,2,2,5,5,5,9)
barplot(table(vec))
vec = c(0,1,1,1.5,2,2,3,5,5,5)
hist(vec)
vec = c(0,0,1,1,1,2,2,5,5,5,9,15)
boxplot(vec)
Richtung eines Zusammenhangs.
\[ \large \operatorname{cov}_{e m p}(x, y)=\frac{1}{n} \sum_{i=1}^{n} L_{i}=\frac{1}{n} \sum_{i=1}^{n}\left(x_{i}-\bar{x}\right)\left(y_{i}-\bar{y}\right) \] Symmetrie:
\[ \large \operatorname{cov}_{e m p}(x, y)= \operatorname{cov}_{e m p}(y, x) \]
Kovarianz mit sich selbst ist gleich der empirischen Varianz.
\[ \large \operatorname{cov}_{e m p}(x, x)=\frac{1}{n} \sum_{i=1}^{n}\left(x_{i}-\bar{x}\right)\left(x_{i}-\bar{x}\right)=\frac{1}{n} \sum_{i=1}^{n}\left(x_{i}-\bar{x}\right)^{2}=s_{e m p}^{2} \]
Zusammenhang mit Steigung der Geraden durch das Streudiagram:
\[ \large \operatorname{cov}_{e m p}(x, y)=b \cdot s_{x e m p}^{2} \]
x = c(1,2,3,4,5,6)
y = c(7,8,9,10,11,12)
cov(x,y)
Die Transformation der z-Standardisierung ist für jeden Messwert so definiert:
\[ \large z_{i}=\frac{x_{i}-\bar{x}}{s_{e m p}} \] \[ \large \begin{aligned} \bar{z} &=0 \\ s_{emp z} &=1 \end{aligned} \]
x = c(1,2,3,4,5,6)
(x-mean(x))/sqrt(((length(x)-1)/length(x))*var(x))
\[ \large r_{x y}=\operatorname{cov}_{e m p}\left(z_{x}, z_{y}\right)=\frac{1}{n} \sum_{i=1}^{n}\left(z_{x_{i}}-\bar{z}_{x}\right)\left(z_{y_{i}}-\bar{z}_{y}\right)=\frac{1}{n} \sum_{i=1}^{n} z_{x_{i}} \cdot z_{y_{i}} \]
\[\large = \frac{1}{n} \sum_{i=1}^{n}\left(\frac{x_{i}-\bar{x}}{s_{e m p x}}\right)\left(\frac{y_{i}-\bar{y}}{s_{e m p y}}\right)=\frac{1}{n} \frac{\sum_{i=1}^{n}\left(x_{i}-\bar{x}\right)\left(y_{i}-\bar{y}\right)}{s_{e m p x} \cdot s_{e m p} y} \] Symmetrie:
\[ \large r_{x y}=r_{y x} \] Die Korrelation entspricht der Steigung der Gerade durch das Streudiagram
\[ \large r_{x y}=b_{z} \] Alternative Formel: \[ \large r_{x y}=\frac{\operatorname{cov}_{e m p}(x, y)}{S_{e m p x} \cdot S_{e m p} y} \]
x = c(1,2,3,4,5,6)
y = c(7,8,9,10,11,12)
cor(x,y)
\[ \large E(X)=\sum_{j=1}^{m} x_{j} \cdot P\left(X=x_{j}\right)=\sum_{j=1}^{m} x_{j} \cdot f\left(x_{j}\right) \] Falls die ZV stetig ist: \[ \large E(X)=\int_{-\infty}^{+\infty} x \cdot f(x) d x \]
Rechenregeln für den Erwartungswert \[ \large \begin{array}{c} E(a)=a \\ E(X+a)=E(X)+a \\ E(a \cdot X)=a \cdot E(X) \\ E(X+Y)=E(X)+E(Y) \\ E\left(\sum_{i=1}^{n} X_{i}\right)=\sum_{i=1}^{n} E\left(X_{i}\right) \end{array} \]
# Erwartungswert aus gegebener diskreter Wahrscheinlichkeitsfunktion
x = c(-4,-3,-2,-1)
fx = c(0.3,0.1,0.4,0.2)
sum(x*fx)
# Erwartungswert aus gegebener diskreter Wahrscheinlichkeitsverteilung
x = c(-4,3,4,20,22)
Fx = c(0.1,0.2,0.3,0.8,1)
fx = c(Fx[[1]])
for(i in 2:length(Fx)){fx[i] = Fx[[i]]-Fx[[i-1]]}
sum(x*fx)
Varianz: \[ \large \operatorname{Var}(X)=\sum_{j=1}^{m}\left(x_{j}-E(X)\right)^{2} \cdot P\left(X=x_{j}\right)=\sum_{j=1}^{m}\left(x_{j}-E(X)\right)^{2} \cdot f\left(x_{j}\right) \] Falls die ZV stetig ist: \[ \large \operatorname{Var}(X)=\int_{-\infty}^{+\infty}(x-E(X))^{2} \cdot f(x) d x \] Standardabweichung:
\[ \large S D(X)=\sqrt{\operatorname{Var}(X)} \] Rechenregeln für Varianz und Standardabweichung:
\[ \large \begin{array}{c} \operatorname{Var}(X+a)=\operatorname{Var}(X) \\ S D(X+a)=S D(X) \\ \operatorname{Var}(a \cdot X)=a^{2} \cdot \operatorname{Var}(X) \\ S D(a \cdot X)=a \cdot \operatorname{SD}(X) \end{array} \]
# Varianz, Standardabweichung aus gegebener diskreter Wahrscheinlichkeitsfunktion
x = c(-4,-3,-2,-1)
fx = c(0.3,0.1,0.4,0.2)
e = sum(x*fx)
varemp = sum((x-e)**2*fx)
varemp
sqrt(varemp)
# Varianz, Standardabweichung aus gegebener diskreter Wahrscheinlichkeitsverteilung
x = c(-4,3,4,20,22)
Fx = c(0.1,0.2,0.3,0.8,1)
fx = c(Fx[[1]])
for(i in 2:length(Fx)){fx[i] = Fx[[i]]-Fx[[i-1]]}
e = sum(x*fx)
varemp = sum((x-e)**2*fx)
varemp
sqrt(varemp)
Analog zur Deskriptivstatistik.
\[ \large Z=\frac{X-E(X)}{S D(X)} \] \[ \large \begin{array}{l} \mathrm{E}(Z)=0 \\ SD(Z)=1 \end{array} \]
\[\large X \sim \operatorname{Be}(\pi)\]
\[\large T_{x}=\{0,1\}\]
Wahrscheinlichkeitsfunktion \[ \large \begin{array}{l} f(0)=P(X=0)=1-\pi \\ f(1)=P(X=1)=\pi \end{array} \]
\[ \large f\left(x_{j}\right)=\pi^{x_{j}}(1-\pi)^{1-x_{j}}\]
Verteilungsfunktion
\[ \large \begin{array}{c} F(0)=1-\pi \\ F(1)=1 \end{array} \]
Erwartungswert, Standardabweichung:
\[ \large E(X)=\pi\]
\[ \large SD(X)=\sqrt{\pi(1-\pi)}\]
\[\large X \sim B(n, \pi)\] \[\large T_{x}=\{0,1,2,...,n\}\]
Voraussetzungen:
\[\large X_{1}, X_{2}, \ldots, X_{n}\] \[\large X_{i} \sim Be(\pi)\]
\[\large X=\sum_{i=1}^{n} X_{i}\]
Exkurs: Binomialkoeffizient
\[\large \left(\begin{array}{l} n \\ k \end{array}\right)=\frac{n !}{k !(n-k) !}\]
Wahrscheinlichkeitsfunktion
\[ \large f\left(x_{j}\right)=\left(\begin{array}{l} n \\ x_{j} \end{array}\right) \pi^{x_{j}}(1-\pi)^{n-x_{j}}\]
Verteilungsfunktion:
\[\large F\left(x_{k}\right)=\sum_{j=1}^{k} f\left(x_{j}\right)=\sum_{j=1}^{k}\left(\begin{array}{l} n \\ x_{j} \end{array}\right) \pi^{x_{j}}(1-\pi)^{n-x_{j}}\]
Erwartungswert, Standardabweichung:
\[\large E(X)=n \pi\] \[\large S D(X)=\sqrt{n \pi(1-\pi)}\] R Funktionen
p = 0.5
n = 100
dbinom(x=40, size=n, prob=p) # Wahrscheinlichkeitsfunktion
pbinom(q=70, size=n, prob=p) # Verteilungsfunktion
qbinom(p=0.25, size=n, prob=p) # Quantile
rbinom(n=20, size=n, prob=p) # Zufallsgeneration nach Binomialverteilung
\[\large X \sim N\left(\mu, \sigma^{2}\right)\] \[\large T_{X}=\mathbb{R}\]
Wichtige Eigenschaften:
Wahrscheinlichkeitsdichtefunktion:
\[\large f(x)=\frac{1}{\sqrt{2 \pi \sigma^{2}}} \exp \left(-\frac{1}{2} \cdot \frac{(x-\mu)^{2}}{\sigma^{2}}\right)\]
Erwartugnswert, Varianz, Standardabweichung:
\[\large E(X)=\mu\] \[\large Var(X)=\sigma^2\] \[\large SD(X)=\sigma\] R Funktionen
mu = 3
sigma = 2
dnorm(x=3, mean = mu, sd = sigma) # Wahrscheinlichkeitsdichtefunktion
pnorm(q=0.5, mean = mu, sd = sigma) # Verteilungsfunktion
qnorm(p=0.25, mean = mu, sd = sigma) # Quantile
rnorm(n=20, mean = mu, sd = sigma) # Zufallsgeneration nach Normalverteilung
z-standardisierung (Standardnormalvcerteilung):
\[\large Z=\frac{X-E(X)}{S D(X)}=\frac{X-\mu}{\sigma}\] \[\large Z \sim N(0,1)\]
\[\large T \sim t(v)\]
\[\large T_{T}=\mathbb{R}\]
Erwartungswert (\(\nu\) > 1): \[\large E(T)=0\]
Nützliche Eigenschaft:
\[\large t_{1-\frac{\alpha}{2}}=-t \frac{\alpha}{2}\]
Bemerke: Für hohe n nähert sich die Kurve der t-Verteilung der der Standardnormalverteilung an.
R Funktionen
v = 24
pt(q=1.4, df=v) # Verteilungsfunktion
qt(p=0.25, df=v) # Quantile
dt(x=0.2, df=v) # Wahrscheinlichkeitsdichtefunktion - uninteressant
rt(n=20, df=v) # Zufallsgeneration nach Normalverteilung - uninteressant
Seien \(X_{1}, X_{2}, \ldots, X_{i}, \ldots, X_{n}\) Zufallsvariablen mit \(X_{i} \stackrel{\text { iid }}{\sim} P\), wobei P eine völlig beliebige Wahrscheinlichkeitsverteilung ist. Für
\[\large Z^{*}=\frac{\bar{X}-E(\bar{X})}{\widehat{S D}(\bar{X})}\] gilt dann
\[\large \lim _{n \rightarrow \infty} P_{Z^{*}}=N(0,1)\]
also für großes n
\[\large Z^{*} \stackrel{\mathrm{a}}{\sim} N(0,1)\]
Parameter
Allgemeine Schätzfunktion
Allgemeine Schätzwerte
Konkrete Schätzwerte
Erwarungstreue \[\large E(\hat{\theta})=\theta\] Standardfehler \[\large S E(\hat{\theta})=S D(\hat{\theta})\]
Effizienz: Erwartungstreu und kleinsten Standardfehler aller erwartungstreuen Schätzfunktionen für den Parameter
Konsistenz: \[\large \lim _{n \rightarrow \infty} SE(\hat{\theta})=0\]
\[\large X_{1}, X_{2}, \ldots, X_{n} \operatorname{mit} X_{i} \stackrel{\mathrm{iid}}{\sim} \mathrm{Be}(\pi)\]
Schätzfunktion:
\[\large \hat{\pi}=\bar{X}=\frac{1}{n} \sum_{i=1}^{n} X_{i}\] Erwartungswert:
\[\large E(\hat{\pi})=E(\bar{X}) = \pi\]
Standardfehler:
\[\large S E(\hat{\pi})=\sqrt{\frac{\pi(1-\pi)}{n}}\]
\(\large \hat{\pi}=\bar{X}\) ist erwartungstreu, effizient und konsistent.
(Approximatives) Konfidenzintervall mit Konfidenzniveau \(1-\alpha\): \[\large I\left(X_{1}, \ldots, X_{n}\right)=[U, O]=\left[\bar{X}-z_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{\bar{X}(1-\bar{X})}{n}}, \bar{X}+z_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{\bar{X}(1-\bar{X})}{n}}\right]\] \[\large Z^{*} \stackrel{\mathrm{a}}{\sim} N(0,1)\]
conf.level = 0.90
vec = c(1,1,1,0,0)
n = length(vec)
#Punktschaetzung
x_quer = mean(vec)
x_quer
# Konfidenzintervall von Hand
c = qnorm(1-((1-conf.level)/2), mean=0,sd=1) * sqrt(((x_quer*(1-x_quer))/n))
c(x_quer - c, x_quer + c)
# Konfidenzintervall mit R Funktion
library(DescTools)
BinomCI(x_quer*n,n,method='wald', conf.level = conf.level)
\[\large X_{1}, X_{2}, \ldots, X_{n} \operatorname{mit} X_{i} \stackrel{\mathrm{iid}}{\sim} N\left(\mu, \sigma^{2}\right)\]
Schätzfunktion:
\[\large \hat{\mu}=\bar{X}=\frac{1}{n} \sum_{i=1}^{n} X_{i}\]
Erwartungswert:
\[\large E(\bar{X}) = \mu\]
Standardfehler:
\[\large SE(\bar{X})=\sqrt{\frac{\sigma^{2}}{n}}\]
\(\hat{\mu}=\bar{X}\) ist erwartungstreu, effizient und konsistent.
Wahrscheinlichkeitsverteilung von \(\bar{X}\) \[\large \bar{X} \sim N\left(\mu, \frac{\sigma^{2}}{n}\right)\]
Konfidenzintervall mit Konfidenzniveau \(1-\alpha\): \[\large I\left(X_{1}, \ldots, X_{n}\right)=[U, O]=\left[\bar{X}-t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S^{2}}{n}}, \bar{X}+t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S^{2}}{n}}\right]\]
\[\large T \sim t(n-1)\]
conf.level = 0.95
vec = c(100,80,90,120)
n = length(vec)
#Punktschaetzung
x_quer = mean(vec)
x_quer
s2 = var(vec)
# Konfidenzintervall von Hand
c = qt(1-((1-conf.level)/2), df=n-1) * sqrt(s2/n)
c(x_quer-c, x_quer+c)
# Konfidenzintervall mit R Funktion
t.test(vec, conf.level=conf.level)
\[\large X_{1}, X_{2}, \ldots, X_{n} \operatorname{mit} X_{i} \stackrel{\mathrm{iid}}{\sim} N\left(\mu, \sigma^{2}\right)\]
! \(S_{emp}^{2}\) ist nicht erwartungstreu für \(\sigma^{2}\) !
Schätzfunktion:
\[\large \hat{\sigma}^{2}=S^{2}=\frac{1}{n-1} \sum_{i=1}^{n}\left(X_{i}-\bar{X}\right)^{2}\] Erwartungswert: \[\large E\left(S^{2}\right)=\sigma^{2}\]
Standardfehler: \[\large S D\left(\hat{\sigma}^{2}\right)=\sqrt{\frac{2 \sigma^{4}}{n-1}}\]
\(\hat{\sigma}^{2}=S^{2}\) ist erwartungstreu, effizient und konsistent.
vec = c(100,80,90,120)
n = length(vec)
#Punktschaetzung
var(vec)
\[\large X_{11}, X_{12}, \ldots, X_{1 n_{1}} \operatorname{mit} X_{1 i} \sim N\left(\mu_{1}, \sigma^{2}\right)\] \[\large X_{21}, X_{22}, \ldots, X_{2 n_{2}} \text { mit } X_{2 i} \sim N\left(\mu_{2}, \sigma^{2}\right)\]
Schätzfunktion:
\[\large \bar{X}_{\text {Diff }}=\bar{X}_{1}-\bar{X}_{2}\] Erwartungswert:
\[\large E\left(\bar{X}_{\text {Diff }}\right)=E\left(\bar{X}_{1}-\bar{X}_{2}\right)=\mu_{1}-\mu_{2}\]
Standardfehler:
\[\large S E\left(\bar{X}_{D i f f}\right)=\sqrt{\frac{\sigma^{2}}{n_{1}}+\frac{\sigma^{2}}{n_{2}}}\] \(\bar{X}_{Diff}\) ist erwartungstreu, effizient und konsistent (für \(n_{1} \rightarrow \infty \text { und } n_{2} \rightarrow \infty\)).
Gepoolte Varianz:
\[\large S_{\text {pool }}^{2}=\frac{\left(n_{1}-1\right) \cdot S_{1}^{2}+\left(n_{2}-1\right) \cdot S_{2}^{2}}{n_{1}+n_{2}-2}\] Sonderfall für \(n_{1}=n_{2}\):
\[\large S_{\text {pool }}^{2}=\frac{S_{1}^{2}+S_{2}^{2}}{2}\]
vec1 = c(-10,0,-20,-11,-22)
vec2 = c(0,-10,5)
# Wenn nur Werte und keine Daten vorliegen, diese Werte durch eigene ersetzen
n1 = length(vec1)
n2 = length(vec2)
s2_1 = var(vec1)
s2_2 = var(vec2)
((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
\[\large I\left(X_{1}, \ldots, X_{n}\right)=\left[\left(\bar{X}_{1}-\bar{X}_{2}\right)-t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S_{\text {pool }}^{2}}{n_{1}}+\frac{S_{\text {pool }}^{2}}{n_{2}}},\left(\bar{X}_{1}-\bar{X}_{2}\right)+t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S_{\text {pool }}^{2}}{n_{1}}+\frac{S_{\text {pool }}^{2}}{n_{2}}}\right]\] \[\large T \sim t\left(n_{1}+n_{2}-2\right)\]
conf.level = 0.99
vec1 = c(-10,0,-20,-11,-22)
vec2 = c(0,-10,5)
x_quer1 = mean(vec1)
x_quer2 = mean(vec2)
n1 = length(vec1)
n2 = length(vec2)
# Punktschaetzung
xdiff_quer = mean(vec1)-mean(vec2)
xdiff_quer
# Konfidenzintervall von Hand
s2_1 = var(vec1)
s2_2 = var(vec2)
s2pool = ((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
c = qt(1-((1-conf.level)/2), df = n1+n2-2) * sqrt(s2pool/n1 + s2pool/n2)
c(xdiff_quer-c, xdiff_quer+c)
# Konfidenzintervall mit R Funktion
t.test(vec1,vec2,paired=FALSE,var.equal = TRUE,conf.level=conf.level)
\[\large X_{i \text { Diff }}=X_{i 1}-X_{i 2}\] \[\large X_{i \text { Diff }} \stackrel{\mathrm{iid}}{\sim} N\left(\mu_{1}-\mu_{2}, \sigma_{\text {Diff }}^{2}\right)\]
Schätzfunktion:
\[\large \bar{X}_{\text {Diff }}=\bar{X}_{1}-\bar{X}_{2}\]
Erwartungswert:
\[\large E\left(\bar{X}_{\text {Diff }}\right)=E\left(\bar{X}_{1}-\bar{X}_{2}\right)=\mu_{1}-\mu_{2}\]
Standardfehler:
\[\large S E\left(\bar{X}_{\text {Diff }}\right)=\sqrt{\frac{\sigma_{\text {Diff }}^{2}}{n}}\]
\(\bar{X}_{Diff}\) ist erwartungstreu, effizient und konsistent (für \(n\rightarrow\infty\) ).
\[\large I\left(X_{1}, \ldots, X_{n}\right)=\left[\left(\bar{X}_{1}-\bar{X}_{2}\right)-t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S_{D i f f}^{2}}{n}},\left(\bar{X}_{1}-\bar{X}_{2}\right)+t_{1-\frac{\alpha}{2}} \cdot \sqrt{\frac{S_{D i f f}^{2}}{n}}\right]\]
\[\large T \sim t(n-1)\]
conf.level = 0.99
# Muessen gleiche Laenge haben
vec1 = c(3,5,7,-9,-3)
vec2 = c(-3,-3,-4,-1,0)
n = length(vec1)
#Punkschaetzung
xdiff_quer = mean(vec1)-mean(vec2)
xdiff_quer
# Konfidenzintervall von Hand
s2diff = var(vec1-vec2)
c = qt(1-((1-conf.level)/2), df = n-1) * sqrt(s2diff/n)
c(xdiff_quer - c, xdiff_quer + c)
# Konfidenzintervall mit R Funktion
t.test(vec1,vec2,paired=TRUE,var.equal = TRUE,conf.level=conf.level)
Formulierung: [Ein/Zwei]stichproben [t-/Binomial]test (für [abhängige/unabhängige] Stichproben) über Parameter [\(\mu\) / \(\pi\) \(/\mu_1 - \mu_2\)] für [gerichtete/ungerichtete] Hypothesen
t-Wert berechnen: Punktschätzwerte bestimmen und in die jeweilige Teststatistik einsetzen
Kritischen Bereich bestimmen:
klinks = qt(alpha/2,df) krechts = qt(1-(alpha/2),df)
qt(alpha,df)
qt(1-alpha,df)
p-Wert berechnen: t-Wert berechnen und
linksseitig: \(P(T \leq t) = F(t)\) pt(t, df)
rechtsseitig: \(P(T \geq t) = 1 - F(t)\) 1-pt(t, df)
ungerichtet: \(\begin{array}{l} 2 \cdot P(T \leq t) \text { falls } t<0 \text { ist, } \\ 2 \cdot P(T \leq-t) \text { falls } t>0 \text { ist. } \end{array}\) if(t <= 0) 2*pt(t, df) else 2*pt(-t, df)
\[\large T=\frac{\bar{X}-\mu_{0}}{\sqrt{\frac{S^{2}}{n}}} \stackrel{H_{0}}{\sim} t(n-1)\]
\[\large \begin{array}{l} H_{0}: \mu=\mu_{0} \\ H_{1}: \mu \neq \mu_{0} \end{array}\] \[\large \left.\left.K_{T}=\right]-\infty, t_{\text {krit_links }}\right] \cup\left[t_{\text {krit_rechts }},+\infty[\right.\]
alpha = 0.005
data = c(-20,-30,-70,-10,-50)
mu0 = -10
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data)
x_quer = mean(data)
s2 = var(data)
klinks = qt(alpha/2,df=n-1)
krechts = qt(1-(alpha/2),df=n-1)
paste("Krit. Bereich: ]-INF;", klinks,"] [", krechts, "; INF[", sep="")
t = (x_quer-mu0)/sqrt(s2/n)
t
p = if(t <= 0) 2*pt(t, n-1) else 2*pt(-t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data, mu = mu0, alternative = 'two.sided')
\[\large \begin{array}{l} H_{0}: \mu \geq \mu_{0} \\ H_{1}: \mu<\mu_{0} \end{array}\]
\[\large \left.\left.K_{T}=\right]-\infty, t_{k r i t}\right]\]
alpha = 0.005
data = c(-20,-30,-70,-10,-50)
mu0 = -10
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data)
x_quer = mean(data)
s2 = var(data)
klinks = qt(alpha,df=n-1)
paste("Krit. Bereich: ] -INF;", klinks,"]", sep="")
t = (x_quer-mu0)/sqrt(s2/n)
t
p = pt(t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data, mu = mu0, alternative = 'less')
\[ \large \begin{array}{l} H_{0}: \mu \leq \mu_{0} \\ H_{1}: \mu>\mu_{0} \end{array} \]
\[\large K_{T}=\left[t_{\text {krit }},+\infty[\right.\]
alpha = 0.005
data = c(-2,3,0,-3,1)
mu0 = 3
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data)
x_quer = mean(data)
s2 = var(data)
krechts = qt(1-alpha,df=n-1)
paste("Krit. Bereich: [", krechts,";INF[", sep="")
t = (x_quer-mu0)/sqrt(s2/n)
t
p = 1-pt(t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data, mu = mu0, alternative = 'greater')
\[\large T=\sum_{i=1}^{n} X_{i}\stackrel{Ho}{\sim} Bin(n,\pi_0)\]
\[\large \begin{array}{l} H_{0}: \pi=\pi_{0} \\ H_{1}: \pi \neq \pi_{0} \end{array}\]
hits = 43
n = 100
pi0 = 0.5
binom.test(x=hits, n=n, p=pi0, alternative='two.sided')
\[\large \begin{array}{l} H_{0}: \pi \geq \pi_{0} \\ H_{1}: \pi<\pi_{0} \end{array}\]
hits = 43
n = 100
pi0 = 0.5
binom.test(x=hits, n=n, p=pi0, alternative='less')
\[\large \begin{array}{l} H_{0}: \pi \leq \pi_{0} \\ H_{1}: \pi>\pi_{0} \end{array}\]
Besonderheit p-Wert Berechnung:
\[p = P(T \geq t)=1-P(T<t)=1-P(T \leq t-1)=1-F(t-1)\]
hits = 66
n = 100
pi0 = 0.5
binom.test(x=hits, n=n, p=pi0, alternative='greater')
\[\large T=\frac{\left(\bar{X}_{1}-\bar{X}_{2}\right)-\mu_{0}}{\sqrt{\frac{S_{p o o l}^{2}}{n_{1}}+\frac{S_{p o o l}^{2}}{n_{2}}}}\stackrel{H_{0}}{\sim} t(n_1+n_2-2)\]
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2}=\mu_{0} \\ H_{1}: \mu_{1}-\mu_{2} \neq \mu_{0} \end{array}\]
\[\large \left.\left.K_{T}=\right]-\infty, t_{\text {krit_links }}\right] \cup\left[t_{\text {krit_rechts }},+\infty[\right.\]
alpha = 0.005
data1 = c(-1,-4,-4,-3,-3)
data2 = c(-2,-4,-6)
mu0 = 0
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n1 = length(data1)
n2 = length(data2)
xdiff_quer = mean(data1)-mean(data2)
s2_1 = var(data1)
s2_2 = var(data2)
s2pool = ((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
klinks = qt(alpha/2,df=n1+n2-2)
krechts = qt(1-alpha/2,df=n1+n2-2)
paste("Krit. Bereich: ]-INF;", klinks,"] [", krechts, "; INF[", sep="")
t = (xdiff_quer-mu0)/sqrt(s2pool/n1 + s2pool/n2)
t
p = if(t <= 0) 2*pt(t, n1+n2-2) else 2*pt(-t, n1+n2-2)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'two.sided', paired = FALSE, var.equal= TRUE)
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2} \geq \mu_{0} \\ H_{1}: \mu_{1}-\mu_{2}<\mu_{0} \end{array}\]
\[\large \left.\left.K_{T}=\right]-\infty, t_{k r i t}\right]\]
alpha = 0.005
data1 = c(-1,0,-2,-1,-4)
data2 = c(2,3,1,3,3)
mu0 = 1
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n1 = length(data1)
n2 = length(data2)
xdiff_quer = mean(data1)-mean(data2)
s2_1 = var(data1)
s2_2 = var(data2)
s2pool = ((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
klinks = qt(alpha,df=n1+n2-2)
paste("Krit. Bereich: ] -INF;", klinks,"]", sep="")
t = (xdiff_quer-mu0)/sqrt(s2pool/n1 + s2pool/n2)
t
p = pt(t, n1+n2-2)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'less', paired = FALSE, var.equal= TRUE)
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2} \leq \mu_{0} \\ H_{1}: \mu_{1}-\mu_{2}>\mu_{0} \end{array}\]
\[\large K_{T}=\left[t_{\text {krit }},+\infty[\right.\]
alpha = 0.005
data1 = c(100,200,100,200)
data2 = c(102,202,102,202,152)
mu0 = -2
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n1 = length(data1)
n2 = length(data2)
xdiff_quer = mean(data1)-mean(data2)
s2_1 = var(data1)
s2_2 = var(data2)
s2pool = ((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
krechts = qt(1-alpha,df=n1+n2-2)
paste("Krit. Bereich: [", krechts,";INF[", sep="")
t = (xdiff_quer-mu0)/sqrt(s2pool/n1 + s2pool/n2)
t
p = 1-pt(t, n1+n2-2)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'greater', paired = FALSE, var.equal= TRUE)
\[\large T=\frac{\left(\bar{X}_{1}-\bar{X}_{2}\right)-\mu_{0}}{\sqrt{\frac{S_{D i f f}^{2}}{n}}}\stackrel{H_{0}}{\sim} t(n-1)\]
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2}=\mu_{0} \\ H_{1}: \mu_{1}-\mu_{2} \neq \mu_{0} \end{array}\]
\[\large \left.\left.K_{T}=\right]-\infty, t_{\text {krit_links }}\right] \cup\left[t_{\text {krit_rechts }},+\infty[\right.\]
alpha = 0.005
data1 = c(-0.3,-0.4,0.2,0.5,0.7)
data2 = c(-0.3,0.3,0.4,0,0)
mu0 = 0
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data1)
xdiff_quer = mean(data1)-mean(data2)
s2diff = var(data1-data2)
klinks = qt(alpha/2,df=n-1)
krechts = qt(1-alpha/2,df=n-1)
paste("Krit. Bereich: ]-INF;", klinks,"] [", krechts, "; INF[", sep="")
t = (xdiff_quer-mu0)/sqrt(s2diff/n)
t
p = if(t <= 0) 2*pt(t, n-1) else 2*pt(-t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'two.sided', paired = TRUE, var.equal= TRUE)
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2} \geq \mu_{0} \\ H_{1}: \mu_{1}-\mu_{2}<\mu_{0} \end{array}\]
\[\large \left.\left.K_{T}=\right]-\infty, t_{k r i t}\right]\]
alpha = 0.005
data1 = c(-10,-20,-20,-15,-8)
data2 = c(-20,-50,-70,-80,-90)
mu0 = 10
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data1)
xdiff_quer = mean(data1)-mean(data2)
s2diff = var(data1-data2)
klinks = qt(alpha,df=n-1)
paste("Krit. Bereich: ] -INF;", klinks,"]", sep="")
t = (xdiff_quer-mu0)/sqrt(s2diff/n)
t
p = pt(t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'less', paired = TRUE, var.equal= TRUE)
\[\large \begin{array}{l} H_{0}: \mu_{1}-\mu_{2} \leq \mu_{0} \\ H_{1}: \mu_{1}-\mu_{2}>\mu_{0} \end{array}\]
\[\large K_{T}=\left[t_{\text {krit }},+\infty[\right.\]
alpha = 0.005
data1 = c(11,35,14,12,2)
data2 = c(10,40,30,10,15)
mu0 = 0
# Hypothesentest von Hand - Wenn nur Werte gegeben sind und keine Daten, diese Variablen durch eigene Werte ersetzen
n = length(data1)
xdiff_quer = mean(data1)-mean(data2)
s2diff = var(data1-data2)
krechts = qt(1-alpha,df=n-1)
paste("Krit. Bereich: [", krechts,";INF[", sep="")
t = (xdiff_quer-mu0)/sqrt(s2diff/n)
t
p = 1-pt(t, n-1)
p
if(p <= alpha) print("H1 annehmen") else print("H0 annehmen")
# Hypothesentest mit R Funktion - basierend auf den Datenvektoren (ignorieren, falls eigene Werte verwendet werden)
t.test(data1, data2, mu = mu0, alternative = 'greater', paired = TRUE, var.equal= TRUE)
Unabhängige Stichproben:
\[\large \delta=\frac{\mu_{1}-\mu_{2}}{\sqrt{\sigma^{2}}}\] \[\large \hat{\delta}_{W e r t}=\frac{\bar{x}_{1}-\bar{x}_{2}}{\sqrt{s_{\text {pool }}^{2}}}\]
data1 = c(0,0,-1)
data2 = c(2,0,1)
# Cohens Delta von Hand
n1 = length(data1)
n2 = length(data2)
xdiff_quer = mean(data1)-mean(data2)
s2_1 = var(data1)
s2_2 = var(data2)
s2pool = ((n1-1)*s2_1+(n2-1)*s2_2)/(n1+n2-2)
xdiff_quer/sqrt(s2pool)
# Cohens Delta mit R Funktion
library(effsize)
cohen.d(data1, data2)
Abhängige Stichproben:
\[\large \delta=\frac{\mu_{1}-\mu_{2}}{\sqrt{\sigma_{\text {Diff }}^{2}}}\]
\[\large \hat{\delta}_{W e r t}=\frac{\bar{x}_{1}-\bar{x}_{2}}{\sqrt{s_{D i f f}^{2}}}\]
data1 = c(-10,-20,-20,-15,-80)
data2 = c(-20,-50,-70,-80,-90)
# Cohens Delta mit R Funktion
library(effsize)
cohen.d(data1, data2, paired=TRUE)
Größen:
\(\delta\) | 0.2 | 0.5 | 0.8 |
---|---|---|---|
Interpretation | kleiner Effekt | mittlerer Effekt | großer Effekt |
library(MBESS)
d_est = -0.54
n1 = 18
n2 = 18
ci.smd(smd=d_est,n.1=n1,n.2=n2,conf.level = 0.95)
library(MBESS)
d_guess = 0.5
conf.level = 0.95
width = 0.29
ss.aipe.smd(d_guess, conf.level, width)
Wahrscheinlichkeit, dass sich die Teststatistik im kritischen Bereich realisiert, falls die \(H_1\) gilt.
4 Faktoren wirken aufeinander: Power (\(1-\beta\)), Signifikanzniveau (\(\alpha\)), Effekt (\(\delta\)) und Stichprobengröße (n). 3 dieser Werte bestimmen jeweils den 4.
Für die Berechnung der Power brauchen wir: Signifikanzniveau (\(\alpha\)), (kleinst annehmbaren) Effekt (\(\delta\)) und Stichprobengröße (n).
library(pwr)
n = 1000 # Anzahl pro Gruppe
effect = -0.2
alpha = 0.005
type = 'one.sample' # oder 'two.sample' oder 'paired'
alternative = 'less' # oder 'greater' oder 'two.sided'
pwr.t.test(n=n,d=effect,sig.level=alpha, type=type, alternative=alternative)
Für die Planung der Stichprobengröße brauchen wir: Gewünschte Power (\(1-\beta\)), Signifikanzniveau (\(\alpha\)), Effekt (\(\delta\))
(n ist die Anzahl an Personen pro Gruppe)
library(pwr)
desired_power = 0.8
effect = -0.2
alpha = 0.005
type = 'one.sample' # oder 'two.sample' oder 'paired' - Typ des Hypothesentests
alternative = 'less' # oder 'greater' oder 'two.sided' - Richtung der H1
pwr.t.test(power=desired_power,d=effect,sig.level=alpha, type=type, alternative=alternative)
\[\large f p=\alpha \cdot \rho \cdot N\]
\[\large r p=(1-\beta) \cdot(1-\rho) \cdot N\]
\[\large F D R=\frac{f p}{g p}=\frac{f p}{f p+r p}=\frac{\alpha \cdot \rho \cdot N}{\alpha \cdot \rho \cdot N+(1-\beta) \cdot(1-\rho) \cdot N}=\frac{\alpha \cdot \rho}{\alpha \cdot \rho+(1-\beta) \cdot(1-\rho)}\]
alpha = 0.005
power = 0.95
baserate = 0.6
FDR = (alpha*baserate)/((alpha*baserate)+(power)*(1-baserate))
FDR
# Anzahl der false positives und right positives unter Angabe eines N
N = 10
fp = alpha*baserate*N
fp
rp = power*(1-baserate)*N
rp
.