Pandas Eindeutige Werte zählen
-
Zählen eindeutiger Werte in einem DataFrame mit
Series.value_counts()
-
Eindeutige Werte in einem DataFrame zählen mit
DataFrame.nunique()
Dieses Tutorial erklärt, wie man mit den Methoden Series.value_counts()
und DataFrame.nunique()
alle eindeutigen Werte in einem DataFrame zählen kann.
import pandas as pd
patients_df = pd.DataFrame(
{
"Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
"Date": [
"2020-12-01",
"2020-12-01",
"2020-12-02",
"2020-12-02",
"2020-12-02",
"2020-12-03",
],
"Age": [17, 18, 17, 16, 18, 16],
}
)
print(patients_df)
Ausgabe:
Name Date Age
0 Jennifer 2020-12-01 17
1 Travis 2020-12-01 18
2 Bob 2020-12-02 17
3 Emma 2020-12-02 16
4 Luna 2020-12-02 18
5 Anish 2020-12-03 16
Anhand des DataFrames patients_df
, der die Namen der Patienten, ihr Termindatum und ihr Alter enthält, wollen wir erklären, wie wir die Anzahl aller eindeutigen Werte in einem DataFrame ermitteln können.
Zählen eindeutiger Werte in einem DataFrame mit Series.value_counts()
import pandas as pd
patients_df = pd.DataFrame(
{
"Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
"Date": [
"2020-12-01",
"2020-12-01",
"2020-12-02",
"2020-12-02",
"2020-12-02",
"2020-12-03",
],
"Age": [17, 18, 17, 16, 18, 16],
}
)
print("The DataFrame is:")
print(patients_df, "\n")
print("No of appointments for each date:")
print(patients_df["Date"].value_counts())
Ausgabe:
The DataFrame is:
Name Date Age
0 Jennifer 2020-12-01 17
1 Travis 2020-12-01 18
2 Bob 2020-12-02 17
3 Emma 2020-12-02 16
4 Luna 2020-12-02 18
5 Anish 2020-12-03 16
No of appointments for each date:
2020-12-02 3
2020-12-01 2
2020-12-03 1
Name: Date, dtype: int64
Es wird die Anzahl aller eindeutigen Werte der Spalte Date
im DataFrame angezeigt.
Eindeutige Werte in einem DataFrame zählen mit DataFrame.nunique()
import pandas as pd
patients_df = pd.DataFrame(
{
"Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
"Date": [
"2020-12-01",
"2020-12-01",
"2020-12-02",
"2020-12-02",
"2020-12-02",
"2020-12-03",
],
"Age": [17, 18, 17, 16, 18, 16],
}
)
print(patients_df, "\n")
print(patients_df.groupby("Date").Name.nunique())
Ausgabe:
Name Date Age
0 Jennifer 2020-12-01 17
1 Travis 2020-12-01 18
2 Bob 2020-12-02 17
3 Emma 2020-12-02 16
4 Luna 2020-12-02 18
5 Anish 2020-12-03 16
Date
2020-12-01 2
2020-12-02 3
2020-12-03 1
Name: Name, dtype: int64
Der DataFrame wird basierend auf dem Wert der Spalte Date
aufgeteilt, d.h. Zeilen mit demselben Wert der Spalte Date
werden in derselben Gruppe platziert und dann wird das Auftreten jedes Namens in einer bestimmten Gruppe gezählt, um die Anzahl der einzelnen eindeutigen Werte der Spalte Date
im DataFrame zu ermitteln.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn