Pandas gewichteter Durchschnitt

In der Mathematik wird der Durchschnitt ermittelt, indem alle Werte/Zahlen addiert und durch die Summe der Gesamtzahlen dividiert werden. Beim gewichteten Durchschnitt wird der Durchschnitt eines Datensatzes berechnet, wobei einigen Werten mehr Gewicht oder Bedeutung beigemessen wird als anderen. Um den gewichteten Durchschnitt von DataFrame-Spalten zu ermitteln, werden in Python verschiedene Methoden verwendet.

Dieser Artikel bietet ein umfassendes Tutorial zur Bestimmung des gewichteten Durchschnitts von Pandas DataFrame anhand zahlreicher Beispiele.

Wie bestimme ich den gewichteten Durchschnitt von Pandas DataFrame in Python?

Um den gewichteten Durchschnitt von Pandas DataFrame zu ermitteln, werden in Python die folgenden Methoden verwendet:

Methode 1: Bestimmen Sie den gewichteten Durchschnitt mit „np.average()“

Der „np.average()Die Methode wird verwendet, um den gewichteten Durchschnitt entlang der jeweiligen Achse in Python zu bestimmen.

Syntax

numpy.average(a, axis=None,weights=None, returns=False, *, keepdims=)

Hier in dieser Syntax ist das „ADer Parameter gibt das Array an, dessen Daten gemittelt werden müssen. Der „Achse“ Und „GewichteDer Parameter „wird verwendet, um die Array-Achse anzugeben, entlang derer der Array gemittelt werden soll, sowie die Gewichtungen, die den Werten entlang des Arrays zugeordnet sind.

Lassen Sie uns diese Methode anhand des folgenden Beispielcodes verstehen:

Pandas importieren, Numpy
df = pandas.DataFrame({‚Id_no‘: [3, 2, 4, 6, 2],’Marken‘: [15, 35, 45, 55, 20]})
print(df, ‚\n‘)
print(numpy.average(a=df[‚Marks‘]Gewichte=df[‚Id_no‘]))

Im obigen Code:

    • Der „Pandas“ Und „Numpy„Module werden importiert.
    • Der „pandas.DataFrame()Die Funktion erstellt den DataFrame und weist den Wert zu „df“.
    • Der „numpy.average()„Methode übernimmt die Datenrahmenspalte“Markierungen” als erstes Argument und „ID Nr” als zweites Argument, um den gewichteten Durchschnitt basierend auf den angegebenen Gewichten zu ermitteln.

Ausgabe

Der gewichtete Durchschnitt wurde erfolgreich berechnet:

Der folgende Ausschnitt zeigt, wie der gewichtete Durchschnitt berechnet wurde:

Methode 2: Bestimmen Sie den gewichteten Durchschnitt mithilfe der Funktion „Benutzerdefiniert“.

Dieses Beispiel wird verwendet, um den gewichteten Durchschnitt durch Definition der benutzerdefinierten Funktion zu ermitteln:

Pandas importieren, Numpy
df = pandas.DataFrame({‚Id_no‘: [3, 2, 4, 6, 2],’Marken‘: [15, 35, 45, 55, 20]})
print(df, ‚\n‘)
def w_average(df, x, w):
Rückgabesumme(df[w] * df[x]) / df[w].Summe()

print(w_average(df, ‚Marks‘, ‚Id_no‘))

Im obigen Code:

    • Die benutzerdefinierte Funktion namens „w_durchschnittlich” wird mit drei Parametern definiert.
    • Die Funktion ruft den gewichteten Durchschnitt der angegebenen DataFrame-Spalten ab. Hier werden die Gewichtswerte mit den tatsächlichen Datenwerten multipliziert und durch die Summe der Gewichte dividiert.
    • Der „w_average()Die Funktion wird für die angegebenen Spalten aufgerufen und ermittelt den gewichteten Durchschnitt.

Ausgabe

Der gewichtete Durchschnitt der Pandas DataFrame-Spalte wurde ermittelt.

Methode 3: Bestimmen Sie den gewichteten Durchschnitt mithilfe von „groupby“

Wir können die DataFrame-Daten auch gruppieren und den gewichteten Durchschnitt jeder Gruppe ermitteln. Hier ist ein Beispielcode:

Pandas importieren, Numpy
df = pandas.DataFrame({‚Name‘: [‚Joseph‘, ‚Lily‘, ‚Joseph‘,’Lily‘,’Joseph‘],’ID Nr‘: [3, 2, 4, 6, 2],’Marken‘: [15, 35, 45, 55, 20]})
print(df, ‚\n‘)
def w_average(df, x, w):
Rückgabesumme(df[w] * df[x]) / df[w].Summe()

print(df.groupby(‚Name‘).apply(w_average, ‚Marks‘, ‚Id_no‘))

In diesem Code:

    • Der „w_average()„Die benutzerdefinierte Funktion wird mit drei Parametern definiert: „Array-Daten“, „Werte„, Und „Gewichte“.
    • Der „df.groupby()Die Methode gruppiert die DataFrame-Daten basierend auf den angegebenen Spalten.
    • Nach dem Gruppieren der Daten wird das „anwenden()Die Funktion führt die benutzerdefinierte Funktion für die einzelnen Spalten von DataFrame aus, um den gewichteten Durchschnitt abzurufen.

Ausgabe

Der gewichtete Durchschnitt der angegebenen DataFrame-Spalten basierend auf der Gruppe wurde berechnet.

Abschluss

Der „np.average()” Methode, die „Benutzerdefinierte”-Funktion und die „gruppiere nachDie Methode wird verwendet, um den gewichteten Durchschnitt des Pandas DataFrame zu bestimmen. Diese Methoden können den gewichteten Durchschnitt der angegebenen DataFrame-Spalten ermitteln. Dieser Artikel lieferte ein umfassendes Tutorial zum gewichteten Durchschnitt der Pandas anhand zahlreicher Beispiele.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen