Implementering af Sandsynlighedsfordelinger i Python
Stryg for at vise menuen
Binomialfordeling
Binomialfordelingen modellerer sandsynligheden for at opnå præcis k succeser i n uafhængige forsøg, hvor hvert forsøg har sandsynligheden p for succes.
123456789101112131415161718from 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- vi tester 100 stænger;p = 0.02- 2% sandsynlighed for, at en stang er defekt;k = 3- sandsynlighed for præcis 3 defekte;binom.pmf()beregner sandsynlighedsmassen.
Uniform fordeling
Den uniforme fordeling modellerer en kontinuerlig variabel, hvor alle værdier mellem $a$ og $b$ er lige sandsynlige.
1234567891011121314151617from 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- samlet interval for stanglængder;low, high- interesseinterval;- Subtraktion af CDF-værdier giver sandsynligheden inden for intervallet.
Normalfordeling
Normalfordelingen beskriver værdier, der samler sig omkring et gennemsnit $\mu$ med spredning målt ved standardafvigelsen $\sigma$.
1234567891011121314151617181920import 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- gennemsnitlig stangvægt;sigma- standardafvigelse;- Sandsynlighed - forskel på CDF;
- Z-scores viser, hvor langt grænserne er fra gennemsnittet.
Anvendelse i virkeligheden
- Binomial - hvor sandsynligt er et bestemt antal defekte stænger?
- Uniform - er stanglængderne inden for tolerancen?
- Normal - er stangvægtene inden for forventet variation?
Ved at kombinere disse kan kvalitetskontrol målrette fejl, sikre præcision og opretholde produktkonsistens.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Implementering af Sandsynlighedsfordelinger i Python
Binomialfordeling
Binomialfordelingen modellerer sandsynligheden for at opnå præcis k succeser i n uafhængige forsøg, hvor hvert forsøg har sandsynligheden p for succes.
123456789101112131415161718from 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- vi tester 100 stænger;p = 0.02- 2% sandsynlighed for, at en stang er defekt;k = 3- sandsynlighed for præcis 3 defekte;binom.pmf()beregner sandsynlighedsmassen.
Uniform fordeling
Den uniforme fordeling modellerer en kontinuerlig variabel, hvor alle værdier mellem $a$ og $b$ er lige sandsynlige.
1234567891011121314151617from 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- samlet interval for stanglængder;low, high- interesseinterval;- Subtraktion af CDF-værdier giver sandsynligheden inden for intervallet.
Normalfordeling
Normalfordelingen beskriver værdier, der samler sig omkring et gennemsnit $\mu$ med spredning målt ved standardafvigelsen $\sigma$.
1234567891011121314151617181920import 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- gennemsnitlig stangvægt;sigma- standardafvigelse;- Sandsynlighed - forskel på CDF;
- Z-scores viser, hvor langt grænserne er fra gennemsnittet.
Anvendelse i virkeligheden
- Binomial - hvor sandsynligt er et bestemt antal defekte stænger?
- Uniform - er stanglængderne inden for tolerancen?
- Normal - er stangvægtene inden for forventet variation?
Ved at kombinere disse kan kvalitetskontrol målrette fejl, sikre præcision og opretholde produktkonsistens.
Tak for dine kommentarer!