Реалізація Ймовірнісних Розподілів у Python
Свайпніть щоб показати меню
Біноміальний розподіл
Біноміальний розподіл моделює ймовірність отримати рівно k успіхів у n незалежних випробуваннях, кожне з яких має ймовірність успіху p.
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- тестування 100 стрижнів;p = 0.02- 2% ймовірність, що стрижень є дефектним;k = 3- ймовірність рівно 3 дефектних стрижнів;binom.pmf()обчислює функцію маси ймовірності.
Рівномірний розподіл
Рівномірний розподіл моделює неперервну змінну, де всі значення між $a$ та $b$ є однаково ймовірними.
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– загальний діапазон довжин стрижнів;low, high– інтервал, що цікавить;- Віднімання значень CDF дає ймовірність всередині інтервалу.
Нормальний розподіл
Нормальний розподіл описує значення, що групуються навколо середнього $\mu$ з розсіюванням, яке вимірюється стандартним відхиленням $\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– середня вага стрижня;sigma– стандартне відхилення;- Ймовірність – різниця CDF;
- Z-значення показують, наскільки межі віддалені від середнього значення.
Застосування в реальному світі
- Біноміальний – яка ймовірність певної кількості дефектних стрижнів?
- Рівномірний – чи знаходяться довжини стрижнів у межах допуску?
- Нормальний – чи знаходяться ваги стрижнів у межах очікуваної варіативності?
Комбінуючи ці розподіли, контроль якості виявляє дефекти, забезпечує точність і підтримує послідовність продукції.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Реалізація Ймовірнісних Розподілів у Python
Біноміальний розподіл
Біноміальний розподіл моделює ймовірність отримати рівно k успіхів у n незалежних випробуваннях, кожне з яких має ймовірність успіху p.
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- тестування 100 стрижнів;p = 0.02- 2% ймовірність, що стрижень є дефектним;k = 3- ймовірність рівно 3 дефектних стрижнів;binom.pmf()обчислює функцію маси ймовірності.
Рівномірний розподіл
Рівномірний розподіл моделює неперервну змінну, де всі значення між $a$ та $b$ є однаково ймовірними.
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– загальний діапазон довжин стрижнів;low, high– інтервал, що цікавить;- Віднімання значень CDF дає ймовірність всередині інтервалу.
Нормальний розподіл
Нормальний розподіл описує значення, що групуються навколо середнього $\mu$ з розсіюванням, яке вимірюється стандартним відхиленням $\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– середня вага стрижня;sigma– стандартне відхилення;- Ймовірність – різниця CDF;
- Z-значення показують, наскільки межі віддалені від середнього значення.
Застосування в реальному світі
- Біноміальний – яка ймовірність певної кількості дефектних стрижнів?
- Рівномірний – чи знаходяться довжини стрижнів у межах допуску?
- Нормальний – чи знаходяться ваги стрижнів у межах очікуваної варіативності?
Комбінуючи ці розподіли, контроль якості виявляє дефекти, забезпечує точність і підтримує послідовність продукції.
Дякуємо за ваш відгук!