Kom igångKom igång gratis

Beräkna ECDF

I den här övningen skriver du en funktion som tar en endimensionell array med data som indata och returnerar \(x\)- och \(y\)-värdena för ECDF:en. Du kommer att använda den här funktionen om och om igen i den här kursen och dess uppföljare. ECDF:er hör till de viktigaste diagrammen inom statistisk analys. Du kan skriva en egen funktion, foo(x,y), enligt följande mall:

def foo(a,b):
    """Beskriv vad funktionen gör här"""
    # Beräkning utförs här
    return x, y

Funktionen foo() ovan tar två argument, a och b, och returnerar två värden, x och y. Funktionshuvudet def foo(a,b): innehåller funktionssignaturen foo(a,b), som består av funktionsnamnet tillsammans med dess parametrar.

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

Statistiskt tänkande i Python (del 1)

Visa kurs

Övningsinstruktioner

  • Definiera en funktion med signaturen ecdf(data). Gör följande inuti funktionsdefinitionen:
    • Beräkna antalet datapunkter, n, med hjälp av funktionen len().
    • \(x\)-värdena är den sorterade datan. Använd funktionen np.sort() för att sortera.
    • \(y\)-data för ECDF:en går från 1/n till 1 i jämnt fördelade steg. Du kan konstruera detta med np.arange(). Kom dock ihåg att slutvärdet i np.arange() inte är inkluderat. Därför behöver np.arange() gå från 1 till n+1. Se till att dividera resultatet med n.
    • Funktionen returnerar värdena x och y.

Interaktiv övning med praktiskt arbete

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

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