시작하기무료로 시작하기

np.random 모듈과 베르누이 시행

베르누이 시행은 편향이 있을 수 있는 동전을 던지는 것으로 생각할 수 있어요. 구체적으로, 각 동전 던지기에서 앞면(성공)이 나올 확률은 \(p\), 뒷면(실패)이 나올 확률은 $1-p$입니다. 이 연습에서는 n번의 베르누이 시행을 수행하는 함수 perform_bernoulli_trials(n, p)를 작성하고, 각 시행의 성공 확률이 p일 때 n번의 시행 중 성공 횟수를 반환하도록 할 거예요. 각 베르누이 시행을 수행할 때는 0과 1 사이의 난수를 반환하는 rng.random() 함수를 사용하세요.

이 연습은 강의의 일부입니다

Python으로 하는 Statistical Thinking (파트 1)

강의 보기

연습 안내

  • 시그니처가 perform_bernoulli_trials(n, p)인 함수를 정의하세요.
    • 베르누이 시행의 성공을 의미하는 True의 개수를 세는 변수 n_success를 0으로 초기화하세요.
    • for 루프를 작성해 각 반복에서 베르누이 시행을 수행하고, 결과가 True이면 성공 횟수를 증가시키세요. range(n)을 순회해 총 n번 반복하세요.
      • 베르누이 시행을 수행하려면 rng.random()을 사용해 0과 1 사이의 난수를 선택하세요. 선택한 수가 p보다 작으면 n_success를 증가시키세요(이를 위해 += 1 연산자를 사용하세요). RNG는 이미 변수 rng로 인스턴스화되고 시드가 설정되어 있어요.
    • 함수는 성공 횟수 n_success를 반환합니다.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

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
코드 편집 및 실행