Se você tem uma história, dá para simular!
Às vezes, a história que descreve nossa distribuição de probabilidade não tem uma distribuição nomeada correspondente. Nesses casos, sem pânico! Você sempre pode simular. É isso que faremos neste e no próximo exercício.
Em exercícios anteriores, analisamos o evento raro de jogos sem rebatidas (no-hitters) na Major League Baseball. Já o hitting the cycle, quando um rebatedor consegue os quatro tipos de rebatida em um único jogo, é outro evento raro. Assim como os no-hitters, isso pode ser modelado como um processo de Poisson; portanto, os tempos entre ocorrências do cycle também seguem uma distribuição Exponencial.
Quanto tempo precisamos esperar para ver um no-hitter e depois um rebatedor completar o cycle? A ideia é que precisamos esperar um tempo pelo no-hitter e, depois dele, esperar pelo cycle. Em outras palavras, qual é o tempo total de espera para a chegada sucessiva de dois processos de Poisson diferentes? O tempo total de espera é o tempo aguardado pelo no-hitter mais o tempo aguardado pelo cycle.
Agora, você vai escrever uma função para amostrar da distribuição descrita por essa história.
Este exercicio faz parte do curso
Pensamento Estatístico em Python (Parte 1)
Instruções do exercicio
- Defina uma função com a assinatura
successive_poisson(tau1, tau2, size=1)que amostra o tempo de espera de um no-hitter e de um cycle.- Sorteie tempos de espera (
sizeamostras) para o no-hitter de uma distribuição exponencial parametrizada portau1e atribua at1. - Sorteie tempos de espera (
sizeamostras) para o cycle de uma distribuição exponencial parametrizada portau2e atribua at2. - A função retorna a soma dos tempos de espera dos dois eventos.
- Sorteie tempos de espera (
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
def successive_poisson(tau1, tau2, size=1):
"""Compute time for arrival of 2 successive Poisson processes."""
# Draw samples out of first exponential distribution: t1
t1 = ____(____, ____)
# Draw samples out of second exponential distribution: t2
t2 = ____(____, ____)
return t1 + t2