Na potrzeby dzisiejszych zajęć będziemy potrzebowali wyznaczyć kwantyle różnych rozkładów:
Do wyznaczania kwantyli służy funkcja rozklad.ppf(q, df), gdzie
import numpy as np
from scipy.stats import norm, chi2, t
# ppf(q) == kwantyl rzedu q
print(norm.ppf(0.05))
# ppf(q, df) == kwantyl rzedu q, df==degree of freedom , liczba stopni swobody
print(chi2.ppf(0.05, 5))
print(t.ppf(0.05, 5))
# aby przeczytać dokumentację funkcji, wystarczy kliknąć shift + tab wewnątrz funkcji ;)
-1.6448536269514729 1.1454762260617692 -2.0150483726691575
Dział kontroli jakości w zakładach chemicznych chce oszacować średnią wagę proszku do prania o nominalnej wadze 3kg. W tym celu pobrał próbkę siedmiu losowych pudełek , które zważył i otrzymał: 2.93, 2.97, 3.05, 2.91, 3.02, 2.87, 2.92 . Wiadomo że rozkład wagi pudełka jest normalny.
# pierwszy podpunkt
# znajduję, że jest to model 1.2
x = np.array([2.93, 2.97, 3.05, 2.91, 3.02, 2.87, 2.92])
mu_0 = 2.9
alpha = 0.05
# liczę statystykę testową
s = np.sqrt(np.var(x))
n = len(x)
T = (np.mean(x) - mu_0)/s*np.sqrt(n)
print(f'Statystyka testowa T = {T:.3f}')
# wyznaczam zbiór krytyczny W
t1 = -t.ppf(1-alpha/2, n-1)
t2 = t.ppf(1-alpha/2, n-1)
print(f'Zbiór krytyczny W = (-oo,{t1:.3f}] u [{t2:.3f},oo)')
Statystyka testowa T = 2.362 Zbiór krytyczny W = (-oo,-2.447] u [2.447,oo)
# drugi podpunkt
# znajduję, że jest to model 1.2
x = np.array([2.93, 2.97, 3.05, 2.91, 3.02, 2.87, 2.92])
mu_0 = 3
alpha = 0.05
# liczę statystykę testową
s = np.sqrt(np.var(x))
n = len(x)
T = (np.mean(x) - mu_0)/s*np.sqrt(n)
print(f'Statystyka testowa T = {T:.3f}')
# wyznaczam zbiór krytyczny W
t1 = -t.ppf(1-alpha, n-1)
print(f'Zbiór krytyczny W = (-oo,{t1:.3f}]')
Statystyka testowa T = -2.106 Zbiór krytyczny W = (-oo,-1.943]
Wiedząc, że dane z pliku data_13.csv pochodzą z rozkładu normalnego o wariancji=4, przetestuj hipotezę o tym, że
# ładuję dane
name = 'data_13.csv'
x = np.genfromtxt(name, delimiter=',')
Wygeneruj 200 liczb z rozkładu Poissona o parametrze $\lambda=2$. Następnie przetestuj hipotezę o tym,
Pomocna może być funkcja np.unique(x, return_counts=True)
np.random.seed(1234)
Dokonano pomiarów tego samego tego samego natężenia prądu dwoma amperomierzami i uzyskano
Załóż że pomiary na amperomierzach pochodzą z rozkładów normalnych o jednakowych wariancjach.
Czy na poziomie istotności $\alpha = 0.10$ można stwierdzić, że wyniki pomiarów na obu amperomierzach są jednakowe? A na poziomie $\alpha = 0.05$?