2
respostas

ValueError

Olá pessoal, meu código esta apresentando erro ao utilizar o parâmetro (n = n) no método sample

import matplotlib.pyplot as plt

tamanho_simulacao = 1000

medias = [renda_5000.sample(n = n).mean() for i in range(1, tamanho_simulacao)]
medias = pd.DataFrame(medias)

ax = medias.plot(style = '.')
ax.figure.set_size_inches(12, 6)
ax.hlines(y = media, xmin = 0, xmax = tamanho_simulacao, colors='black', linestyles='dashed')
ax.hlines(y = intervalo[0], xmin = 0, xmax = tamanho_simulacao, colors='red', linestyles='dashed')
ax.hlines(y = intervalo[1], xmin = 0, xmax = tamanho_simulacao, colors='red', linestyles='dashed')
ax

Aparece esse erro

ValueError: Only integers accepted as `n` values

Sem o parâmetro roda, não sei se é por isso mas ai não aparece a linha da média e as duas linhas do intervalo.

Desde já agradeço o apoio.

2 respostas

Oi Robson, tudo bem? Acredito que este erro aconteceu por que o parâmetro aceita apenas números inteiros. E o cálculo do do tamanho da amostra nos retorna um número quebrado.

Na hora de calcular o tamanho da amostra (n), você garantiu que ele seria um número inteiro?

z = norm.ppf(.975)
e = 10
n = (z * (sigma / e)) ** 2
n = int(n.round())

Editado: consegui resolver, obrigado :)