Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Meu norm.interval está dando um valor muito diferente

Segue o código completo

Estamos estudando o rendimento mensal dos chefes de domicílios com renda até R $ 5.000,00 no Brasil. Nosso supervisor determinou que o erro máximo em relação a média seja de R $ 10,00. Sabemos que o desvio padrão populacional deste grupo de trabalhadores é de R $ 1.082,79 e que a média populacional é de R $ 1.426,54. Para um nível de confiança de 95%, qual deve ser o tamanho da amostra de nosso estudo? Qual o intervalo de confiança para a média considerando o tamanho de amostra obtido?

renda_5000 = dados.query('Renda <= 5000').Renda
sigma = renda_5000.std()
sigma 
1082.7945490306845
media = renda_5000.mean()
media
1426.5372144947232
# calculando o tamanho da amostra
z = norm.ppf(0.5 + (0.95 / 2))
e = 10 
n = (z * (sigma / e)) ** 2
int(n.round())
45039
# intervalo de confiança
invervalo = norm.interval(alpha = 0.95, loc = media, scale = sigma / np.sqrt(n))
intervalo
(4984.260809456757, 5115.739190543243)

como sabia que estava errado, resolvi fazer de um jeito manual

calc = media - z * (sigma/np.sqrt(n)), media + z * (sigma/np.sqrt(n))
calc
(1416.5372144947232, 1436.5372144947232)

e chega no valor correto, estou tentando revisar isso mas não estou encontrando o que estou fazendo errado.

1 resposta
solução!

Resolvido, foi algum bug do colab.. pq não importava o valor que eu colocava dentro das variaveis do norm.ppf ele dava sempre os mesmo resultados. apaguei a linha, recalculei tudo com ctrl + f9 e depois refiz e deu certo.