Kom igångKom igång gratis

Modulen np.random och Bernoulli-försök

Ett Bernoulli-försök kan liknas vid ett kast med ett eventuellt ojust mynt. Varje myntkast har sannolikheten \(p\) att landa på krona (lyckat utfall) och sannolikheten \(1-p\) att landa på klave (misslyckat utfall). I den här övningen skriver du en funktion för att utföra n Bernoulli-försök, perform_bernoulli_trials(n, p), som returnerar antalet lyckade utfall av n Bernoulli-försök där vart och ett har sannolikheten p för lyckat utfall. Använd funktionen rng.random() för att utföra varje Bernoulli-försök – den returnerar ett slumptal mellan noll och ett.

Den här övningen är en del av kursen

Statistiskt tänkande i Python (del 1)

Visa kurs

Övningsinstruktioner

  • Definiera en funktion med signaturen perform_bernoulli_trials(n, p).
    • Initiera en variabel n_success till noll – den fungerar som räknare för True-värden, det vill säga lyckade Bernoulli-försök.
    • Skriv en for-slinga där du utför ett Bernoulli-försök i varje iteration och ökar antalet lyckade utfall om resultatet är True. Utför n iterationer genom att loopa över range(n).
      • För att utföra ett Bernoulli-försök väljer du ett slumptal mellan noll och ett med hjälp av rng.random(). Om det valda talet är mindre än p, öka n_success (använd operatorn += 1 för detta). En RNG har redan instansierats som variabeln rng och seedats.
    • Funktionen returnerar antalet lyckade utfall n_success.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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
Redigera och kör kod