Gerando números aleatórios usando o módulo np.random
Vamos usar bastante o módulo np.random ao longo deste curso e na sua continuação. Na prática, você provavelmente chamará métodos de instâncias de RNG mais do que qualquer outra função quando estiver com o seu chapéu de hacker estatístico. Vamos começar testando uma função simples, rng.random(). Essa função retorna um número aleatório entre zero e um. Se você chamar rng.random() algumas vezes, verá números variando entre zero e um.
Neste exercício, vamos gerar muitos números aleatórios entre zero e um e depois plotar um histograma dos resultados. Se os números forem realmente aleatórios, todas as barras do histograma devem ter alturas (quase) iguais.
Você talvez tenha notado que, no vídeo, Justin gerou 4 números aleatórios passando o argumento nomeado size=4 para rng.random(). Essa abordagem é mais eficiente do que um laço for. Neste exercício, porém, você vai escrever um laço for para vivenciar hacker statistics como a prática de repetir um experimento muitas e muitas vezes.
Este exercicio faz parte do curso
Pensamento Estatístico em Python (Parte 1)
Instruções do exercicio
- Instancie e defina a semente de um gerador de números aleatórios,
rng, usando a semente42. - Inicialize um array vazio,
random_numbers, com 100.000 elementos para armazenar os números aleatórios. Certifique-se de usarnp.empty(100000)para isso. - Escreva um laço
forpara sortear 100.000 números aleatórios usandorng.random(), armazenando-os no arrayrandom_numbers. Para isso, itere sobrerange(100000). - Plote um histograma de
random_numbers. Não é necessário rotular os eixos neste caso, pois estamos apenas verificando o gerador de números aleatórios. Enviar Resposta para mostrar seu gráfico.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# Instantiate and seed the random number generator
# Initialize random numbers: random_numbers
random_numbers = ____
# Generate random numbers by looping over range(100000)
for i in ____:
random_numbers[i] = ____
# Plot a histogram
_ = plt.hist(____)
# Show the plot
plt.show()