ПочатиПочніть безкоштовно

Задача про дні народження

Тепер використаємо моделювання, щоб розв'язати відому задачу з теорії ймовірностей — задачу про дні народження. На перший погляд усе просто: скількох людей потрібно зібрати в кімнаті, щоб імовірність того, що двоє з них мають спільний день народження, була щонайменше 50%?

Якщо маємо 366 людей і 365-денний рік, ми на 100% впевнені, що принаймні двоє матимуть однаковий день народження. Але нам потрібно лише 50%. Моделювання пропонує елегантний спосіб розв'язати цю задачу.

Після виконання цієї вправи ви почнете розуміти, як формулювати задачі в термінах симуляцій.

Ця вправа є частиною курсу

Статистичне моделювання в Python

Переглянути курс

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Draw a sample of birthdays & check if each birthday is unique
days = ____
people = 2

def birthday_sim(____):
    sims, unique_birthdays = 2000, 0 
    for _ in range(sims):
        draw = np.random.choice(days, size=____, replace=True)
        if len(draw) == len(set(draw)): 
            unique_birthdays += 1
    out = 1 - unique_birthdays / sims
    return out
Редагувати та запускати код