Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Todennäköisyysjakaumien Toteuttaminen Pythonilla | Todennäköisyys ja Tilastotiede
Matematiikka Data-analytiikalle

Todennäköisyysjakaumien Toteuttaminen Pythonilla

Pyyhkäise näyttääksesi valikon

Binomijakauma

Binomijakauma mallintaa todennäköisyyttä saada tarkalleen kk onnistumista nn riippumattomassa kokeessa, joissa jokaisessa onnistumisen todennäköisyys on pp.

123456789101112131415161718
from scipy.stats import binom import matplotlib.pyplot as plt # number of trials n = 100 # probability of success p = 0.02 # number of successes k = 3 binom_prob = binom.pmf(k, n, p) # Vizualization x_vals = range(0, 15) y_vals = binom.pmf(x_vals, n, p) plt.bar(x_vals, y_vals, color='skyblue') plt.title(f'Binomial probability: {binom_prob:.4f}') plt.show()
  • n = 100 - testataan 100 tankoa;
  • p = 0.02 - 2 %:n todennäköisyys, että tanko on viallinen;
  • k = 3 - todennäköisyys, että tarkalleen 3 on viallisia;
  • binom.pmf() laskee diskreetin todennäköisyysmassafunktion.

Tasainen jakauma

Tasainen jakauma mallintaa jatkuvaa muuttujaa, jossa kaikki arvot välillä $a$ ja $b$ ovat yhtä todennäköisiä.

1234567891011121314151617
from scipy.stats import uniform import matplotlib.pyplot as plt import numpy as np a = 49.5 b = 50.5 low, high = 49.8, 50.2 uniform_prob = uniform.cdf(high, a, b - a) - uniform.cdf(low, a, b - a) # Vizualization x = np.linspace(a, b, 100) pdf = uniform.pdf(x, a, b - a) plt.plot(x, pdf, color='black') plt.fill_between(x, pdf, where=(x >= low) & (x <= high), color='lightgreen', alpha=0.5) plt.title(f'Uniform probability: {uniform_prob:.1f}') plt.show()
  • a, b - tankojen pituuksien kokonaisväli;
  • low, high - kiinnostuksen väli;
  • CDF-arvojen vähentäminen antaa todennäköisyyden välin sisällä.

Normaalijakauma

Normaalijakauma kuvaa arvoja, jotka keskittyvät keskiarvon $\mu$ ympärille, hajonnan ollessa keskihajonta $\sigma$.

1234567891011121314151617181920
import numpy as np import matplotlib.pyplot as plt from scipy.stats import norm mu = 200 sigma = 5 lower, upper = 195, 205 norm_prob = norm.cdf(upper, mu, sigma) - norm.cdf(lower, mu, sigma) z1 = (lower - mu) / sigma z2 = (upper - mu) / sigma # Vizualization x = np.linspace(mu - 4*sigma, mu + 4*sigma, 200) pdf = norm.pdf(x, mu, sigma) plt.plot(x, pdf, color='black') plt.fill_between(x, pdf, where=(x >= lower) & (x <= upper), color='plum', alpha=0.5) plt.title(f'Normal probability: {norm_prob:.4f}\nZ-scores: {z1}, {z2}') plt.show()
  • mu - keskimääräinen tankopaino;
  • sigma - keskihajonta;
  • Todennäköisyys - kertymäfunktion (CDF) erotus;
  • Z-arvot osoittavat, kuinka kaukana rajat ovat keskiarvosta.

Käytännön sovellus

  • Binomijakauma – kuinka todennäköistä on saada tietty määrä viallisia tankoja?
  • Tasainen jakauma – ovatko tankojen pituudet toleranssirajoissa?
  • Normaalijakauma – ovatko tankopainot odotetun vaihteluvälin sisällä?

Yhdistämällä näitä jakaumia laadunvalvonta kohdistuu virheisiin, varmistaa tarkkuuden ja ylläpitää tuotteen yhdenmukaisuutta.

question mark

Mikä funktio laskee todennäköisyyden, että viallisten tankojen määrä on täsmälleen k?

Valitse oikea vastaus

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 11

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Osio 5. Luku 11
some-alt