Aan de slagGa gratis aan de slag

De ECDF berekenen

In deze oefening schrijf je een functie die als input een 1D-array met data neemt en vervolgens de x- en y-waarden van de ECDF teruggeeft. Je gebruikt deze functie steeds opnieuw in deze cursus en het vervolg erop. ECDF’s behoren tot de belangrijkste grafieken in statistische analyse. Je kunt je eigen functie foo(x,y) schrijven volgens het volgende skelet:

def foo(a,b):
    """Beschrijf hier wat de functie doet"""
    # Berekening gebeurt hier
    return x, y

De functie foo() hierboven neemt twee argumenten a en b en geeft twee waarden x en y terug. De functieheader def foo(a,b): bevat de functiesignatuur foo(a,b), die bestaat uit de functienaam plus de parameters.

Deze oefening maakt deel uit van de cursus

Statistisch denken in Python (deel 1)

Cursus bekijken

Oefeninstructies

  • Definieer een functie met de signatuur ecdf(data). Binnen de functiedefinitie:
    • Bereken het aantal datapunten, n, met de functie len().
    • De \(x\)-waarden zijn de gesorteerde data. Gebruik de functie np.sort() om te sorteren.
    • De \(y\)-data van de ECDF lopen van 1/n tot 1 in gelijke stapjes. Je kunt dit opbouwen met np.arange(). Onthoud wel dat de eindwaarde in np.arange() niet is inbegrepen. Daarom moet np.arange() lopen van 1 tot n+1. Deel dit vervolgens door n.
    • De functie retourneert de waarden x en y.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

def ecdf(data):
    """Compute ECDF for a one-dimensional array of measurements."""
    # Number of data points: n
    ____ = ____(____)

    # x-data for the ECDF: x
    ____ = ____(____)

    # y-data for the ECDF: y
    ____ = ____(____, ____) / n

    return x, y
Code bewerken en uitvoeren