O módulo np.random e testes de Bernoulli
Você pode pensar em um teste de Bernoulli como o lançamento de uma moeda possivelmente viciada. Especificamente, cada lançamento tem probabilidade p de cair cara (sucesso) e probabilidade 1 - p de cair coroa (fracasso). Neste exercício, você vai escrever uma função para executar n testes de Bernoulli, perform_bernoulli_trials(n, p), que retorna o número de sucessos em n testes de Bernoulli, cada um com probabilidade p de sucesso. Para realizar cada teste de Bernoulli, use a função rng.random(), que retorna um número aleatório entre zero e um.
Este exercicio faz parte do curso
Pensamento Estatístico em Python (Parte 1)
Instruções do exercicio
- Defina uma função com a assinatura
perform_bernoulli_trials(n, p).- Inicialize em zero a variável
n_success, o contador de valoresTrue(sucessos nos testes de Bernoulli). - Escreva um laço
forem que você realiza um teste de Bernoulli a cada iteração e incrementa o número de sucessos se o resultado forTrue. Façaniterações percorrendorange(n).- Para realizar um teste de Bernoulli, escolha um número aleatório entre zero e um usando
rng.random(). Se o número escolhido for menor quep, incrementen_success(use o operador+= 1para isso). Um RNG já foi instanciado como a variávelrnge inicializado com uma semente.
- Para realizar um teste de Bernoulli, escolha um número aleatório entre zero e um usando
- A função retorna o número de sucessos,
n_success.
- Inicialize em zero a variável
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
def perform_bernoulli_trials(n, p):
"""Perform n Bernoulli trials with success probability p
and return number of successes."""
# Initialize number of successes: n_success
n_success = ____
# Perform trials
for i in ____:
# Choose random number between zero and one: random_number
# If less than p, it's a success so add one to n_success
if ____:
____
return n_success