Pandas Series.median() Funktion

Pandas 常用函数Pandas Häufige Funktionen


Series.median()Ist eine Funktion in Pandas, die zur Berechnung des Medians (mittlerer Wert) einer Series verwendet wird. Der Median ist der Wert, der nach dem Sortieren der Daten in der Mitte liegt. Er wird nicht von extremen Werten beeinflusst und ist ein robustes Maß für die zentrale Tendenz der Daten.

Wenn Ausreißer oder schiefe Verteilungen in den Daten vorliegen, kann der Median die zentrale Position der Daten genauer widerspiegeln als der Mittelwert. Er wird häufig in Szenarien wie Einkommensdatenanalyse, Immobilienpreisstatistik und Notenanalyse verwendet.


Grundlegende Syntax und Parameter

median()Ist eine Memberfunktion des Series-Objekts, die direkt über den Punktoperator aufgerufen wird.

Syntaxformat

Series.median(axis=None, skipna=True, level=None, numeric_only=None, **kwargs)

Parameterbeschreibung

Parameter Type Beschreibung Standardwert
axis int Gibt die Achse an. Eine Series hat nur eine Datenzeile, daher dient dieser Parameter hauptsächlich der Kompatibilität mit DataFrame. Keine
skipna bool Wenn True, werden NaN-Werte während der Berechnung übersprungen; wenn False, gibt das Ergebnis NaN zurück, wenn NaN auftritt. True
level int oder str Wenn die Series einen MultiIndex hat, geben Sie die Ebene an, die berechnet werden soll. Keine
numeric_only bool Wenn True, werden nur numerische Daten berechnet; andernfalls wird versucht, in numerische Daten umzuwandeln. False

Rückgabewert

  • Rückgabetyp:float
  • BeschreibungGibt den Median aller Elemente in der Series zurück. Wenn die Anzahl der Elemente gerade ist, wird der Durchschnitt der beiden mittleren Elemente zurückgegeben.

Beispiele

Lass uns ... anhand einer Reihe von Beispielen von einfach bis komplex gründlich meistern.Series.median()die Verwendung beherrschen.

Beispiel 1: Grundlegende Verwendung - Median einer ungeraden Anzahl von Elementen

Bei Daten mit einer ungeraden Anzahl von Elementen ist der Median der Wert, der nach dem Sortieren in der Mitte liegt.

Beispiel

import pandas as pd

# Erstellen einer Series, die Mitarbeitereinkommen enthält
# Simulieren Sie das Monatseinkommen von 7 Mitarbeitern in einer Abteilung (Einheit: Tausend Yuan)
income = pd.Series([5, 6, 7, 8, 9, 10, 50])

# Median berechnen
median_income = income.median()

print("Monatliches Einkommen der Mitarbeiter (Tausend Yuan):")
print(income)
print()
print(f"Durchschnittseinkommen: {income.mean():.2f} Tausend Yuan")
print(f"Median-Einkommen: {median_income} Tausend Yuan")
print()
print("Hinweis: Der Durchschnitt wird stark vom Extremwert (50 Tausend Yuan) beeinflusst, während der Median das tatsächliche Niveau besser widerspiegelt.")

Ausgabe:

员工月收入(千元):
0     5
1     6
2     7
3     8
4     9
5    10
6    50
dtype: int64

平均收入:13.57 千元
中位数收入:8.0 千元

Codeanalyse:

  • Nach dem Sortieren der Daten: [5, 6, 7, 8, 9, 10, 50]
  • Die mittlere Position ist das 4. Element (Index 3) mit einem Wert von 8.
  • Da es einen Extremwert (50) gibt, wird der Durchschnitt (13.57) nach oben gezogen, während der Median (8) das Einkommensniveau der meisten Menschen besser widerspiegelt.

Beispiel 2: Median einer geraden Anzahl von Elementen

Bei Daten mit einer geraden Anzahl von Elementen ist der Median der Durchschnitt der beiden mittleren Elemente.

Beispiel

import pandas as pd

# Erstelle eine Series mit 6 Elementen
# Simuliere die Prüfungsergebnisse von 6 Studierenden
scores = pd.Series([75, 82, 88, 92, 95, 100])

# Median berechnen
median_score = scores.median()

print("Prüfungsergebnisse der Studierenden:")
print(scores)
print()
print(f"Durchschnittliche Punktzahl: {scores.mean():.2f}")
print(f"Median-Punktzahl: {median_score}")

Ausgabe:

学生考试成绩:
0    75
1    82
2    88
3    92
4    95
5   100
dtype: int64

平均成绩:88.67
中位数成绩:90.0

Codeanalyse:

  • Nach dem Sortieren der Daten: [75, 82, 88, 92, 95, 100]
  • Die beiden mittleren Elemente sind 88 und 92 (Indizes 2 und 3).
  • Median = (88 + 92) / 2 = 90.

Beispiel 3: Umgang mit Daten, die fehlende Werte enthalten

skipnaDer Parameter bestimmt, wie fehlende Werte behandelt werden.

Beispiel

import pandas as pd
import numpy as np

# Erstellen einer Series mit fehlenden Werten
data_with_nan = pd.Series([10, 20, np.nan, 30, 40, np.nan, 50])

print("Daten mit fehlenden Werten:")
print(data_with_nan)
print()

# Standardmäßig ist skipna=True; NaN wird bei der Berechnung des Medians übersprungen
median_skipna = data_with_nan.median()
print(f"Median, wenn skipna=True (Standard): {median_skipna}")

# Setze skipna=False
median_no_skipna = data_with_nan.median(skipna=False)
print(f"Median, wenn skipna=False: {median_no_skipna}")

Ausgabe:

包含缺失值的数据:
0    10.0
1    20.0
2       NaN
3    30.0
4    40.0
5       NaN
6    50.0
dtype: float64

skipna=True(默认)时的中位数:30.0
skipna=False 时的中位数:nan

Codeanalyse:

  • Gültige Daten: [10, 20, 30, 40, 50], insgesamt 5 Elemente.
  • Nach dem Sortieren den mittleren Wert nehmen: 30.
  • skipna=FalseWenn ..., wird NaN zurückgegeben, solange ein NaN vorhanden ist.

Beispiel 4: Anwendungsszenarien zum Vergleich von Mittelwert und Median

Zeigt den Vorteil des Medians beim Umgang mit verzerrten Daten.

Beispiel

import pandas as pd

# Simuliere die monatlichen Einkommensdaten von 10 Haushalten in einer Wohnanlage
# Die meisten Menschen haben ein Einkommen zwischen 3000-5000 yuan, aber es gibt einige Hochverdiener
income_data = pd.Series([3000, 3500, 3800, 4000, 4200, 4500, 4800, 5000, 8000, 50000])

print("Monatliche Einkommensdaten der Anwohner (yuan):")
print(income_data)
print()

mean_income = income_data.mean()
median_income = income_data.median()

print(f"Durchschnitt: {mean_income:.2f} yuan")
print(f"Median: {median_income} yuan")
print()

print("Analyse:")
print("Der Durchschnitt (10380 yuan) wird durch den Extremwert (50000 yuan) stark nach oben gezogen.")
print("Der Median (4350 yuan) spiegelt das tatsächliche Einkommensniveau der meisten Haushalte besser wider.")
print("Deshalb verwenden Statistikämter bei der Veröffentlichung von Einkommensdaten häufiger den Median.")

Ausgabe:

小区住户月收入数据(元):
0     3000
1     3500
2     3800
3     4000
4     4200
5     4500
6     4800
7     5000
8     8000
9    50000
dtype: int64

平均值:10380.00 元
中位数:4350.0 元

Hinweise

  • Der Median ist unempfindlich gegenüber Extremwerten und robuster als der Mittelwert.
  • Wenn die Anzahl der Datenpunkte gerade ist, ist der Median der Durchschnitt der beiden mittleren Zahlen.
  • Wenn die Daten eine deutlich schiefe Verteilung aufweisen, spiegelt der Median die zentrale Position der Daten besser wider als der Mittelwert.
  • skipnaDas Verhalten des Parameters istmean()gleich.

Zusammenfassung

Series.median()Es ist eine wichtige Funktion zur Beschreibung der zentralen Tendenz von Daten. Zu ihren Hauptmerkmalen gehören:

  • Nicht von Extremwerten beeinflusst, ist das Berechnungsergebnis robust.
  • Bei einer geraden Anzahl von Elementen wird der Durchschnitt der beiden mittleren Elemente zurückgegeben.
  • Besonders nützlich in der Datenanalyse bei schiefen Verteilungen wie Einkommen und Immobilienpreisen.
  • Die Syntax und die Parameter sindmean()exakt gleich, leicht zu erlernen und zu verwenden.

In der praktischen Datenanalyse wird empfohlen, sowohl den Mittelwert als auch den Median zu berechnen, um die Verteilungseigenschaften der Daten umfassender zu verstehen. Wenn die Differenz zwischen beiden groß ist, deutet dies darauf hin, dass die Daten möglicherweise eine schiefe Verteilung oder Ausreißer aufweisen.

Pandas 常用函数Pandas Häufige Funktionen

Andere Erweiterungen