Implementação de Distribuições de Probabilidade em Python
Distribuição Binomial
A distribuição binomial modela a probabilidade de obter exatamente k sucessos em n tentativas independentes, cada uma com probabilidade p de sucesso.
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
- teste de 100 hastes;p = 0.02
- 2% de chance de uma haste ser defeituosa;k = 3
- probabilidade de exatamente 3 defeituosas;binom.pmf()
calcula a função massa de probabilidade.
Distribuição Uniforme
A distribuição uniforme modela uma variável contínua onde todos os valores entre $a$ e $b$ têm a mesma probabilidade.
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
- intervalo total dos comprimentos das hastes;low, high
- intervalo de interesse;- Subtração dos valores da CDF fornece a probabilidade dentro do intervalo.
Distribuição Normal
A distribuição Normal descreve valores agrupados em torno de uma média $\mu$ com dispersão medida pelo desvio padrão $\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
- peso médio da barra;sigma
- desvio padrão;- Probabilidade - diferença da CDF;
- Z-scores indicam a distância dos limites em relação à média.
Aplicação no Mundo Real
- Binomial - qual a probabilidade de um determinado número de hastes defeituosas?
- Uniforme - os comprimentos das hastes estão dentro da tolerância?
- Normal - os pesos das hastes estão dentro da variabilidade esperada?
Ao combinar essas distribuições, o controle de qualidade direciona defeitos, garante precisão e mantém a consistência do produto.
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Can you explain the main differences between the three distributions?
How do I choose which distribution to use for a specific problem?
Can you give more real-world examples for each distribution?
Awesome!
Completion rate improved to 1.96
Implementação de Distribuições de Probabilidade em Python
Deslize para mostrar o menu
Distribuição Binomial
A distribuição binomial modela a probabilidade de obter exatamente k sucessos em n tentativas independentes, cada uma com probabilidade p de sucesso.
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
- teste de 100 hastes;p = 0.02
- 2% de chance de uma haste ser defeituosa;k = 3
- probabilidade de exatamente 3 defeituosas;binom.pmf()
calcula a função massa de probabilidade.
Distribuição Uniforme
A distribuição uniforme modela uma variável contínua onde todos os valores entre $a$ e $b$ têm a mesma probabilidade.
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
- intervalo total dos comprimentos das hastes;low, high
- intervalo de interesse;- Subtração dos valores da CDF fornece a probabilidade dentro do intervalo.
Distribuição Normal
A distribuição Normal descreve valores agrupados em torno de uma média $\mu$ com dispersão medida pelo desvio padrão $\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
- peso médio da barra;sigma
- desvio padrão;- Probabilidade - diferença da CDF;
- Z-scores indicam a distância dos limites em relação à média.
Aplicação no Mundo Real
- Binomial - qual a probabilidade de um determinado número de hastes defeituosas?
- Uniforme - os comprimentos das hastes estão dentro da tolerância?
- Normal - os pesos das hastes estão dentro da variabilidade esperada?
Ao combinar essas distribuições, o controle de qualidade direciona defeitos, garante precisão e mantém a consistência do produto.
Obrigado pelo seu feedback!