Kom igångKom igång gratis

Dra K-S-replikat

Nu behöver du en funktion som drar Kolmogorov-Smirnov-replikat från en målfördelning, f. Konstruera en funktion med signaturen draw_ks_reps(n, f, args=(), size=10000, n_reps=10000) för detta ändamål. Här är n antalet datapunkter och f den funktion du använder för att generera sampel från mål-CDF:en. Om du till exempel vill testa mot en exponentialfördelning skickar du np.random.exponential som f. Den här funktionen tar vanligtvis argument, som måste skickas som en tupel. Om du vill ta sampel från en exponentialfördelning med medelvärdet x_mean använder du nyckelordet args=(x_mean,). Nyckelordsargumenten size och n_reps anger respektive antalet sampel att ta från målfördelningen och antalet replikat att dra.

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

Fallstudier i statistiskt tänkande

Visa kurs

Övningsinstruktioner

  • Skriv en funktion med signaturen draw_ks_reps(n, f, args=(), size=10000, n_reps=10000) som gör följande.
    • Generera size sampel från målfördelningen f. Kom ihåg att du ska använda konstruktionen f(*args, size=size) för att skicka med args till samplingsfunktionen. Lagra resultatet i x_f.
    • Initialisera replikat-arrayen reps som en tom array med n_reps poster.
    • Skriv en for-slinga som utför följande n_reps gånger.
      • Dra n sampel från f. Använd återigen *args i funktionsanropet. Lagra resultatet i variabeln x_samp.
      • Beräkna K-S-statistikan med hjälp av dcst.ks_stat() – det vill säga den funktion du skrev i föregående övning, som finns lagrad i modulen dcst. Lagra resultatet i arrayen reps.
    • Returnera arrayen reps.

Interaktiv övning med praktiskt arbete

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

____ ____:
    # Generate samples from target distribution
    x_f = ____
    
    # Initialize K-S replicates
    reps = ____
    
    # Draw replicates
    for i in range(n_reps):
        # Draw samples for comparison
        x_samp = ____
        
        # Compute K-S statistic
        ____[i] = ____

    return reps
Redigera och kör kod