
In SQL unterteilt die GROUP BY-Operation Daten basierend auf den Werten angegebener Spalten in Teilmengen. Die HAVING-Klausel wendet Filtereinschränkungen auf diese Teilmengen an. Diese Funktion ermöglicht die selektive Datenaggregation und -filterung.
In Pandas ist die GROUP BY-Funktionalität über die Methode groupby() verfügbar, die ein GroupBy-Objekt zurückgibt. Das Pandas-Äquivalent der SQL-HAVING-Klausel ist die Methode filter(), die einen Filter auf die von groupby() erstellte Teilmenge anwendet.
<code>df.groupby(by_column).filter(filter_function)</code>
Unter ihnen:
df ist ein Pandas DataFrame. by_column ist die Spalte, die für die Gruppierung verwendet wird. filter_function ist eine Funktion, die für jede Gruppe einen booleschen Wert zurückgibt. Um einen Filter auf einen gruppierten Datensatz in Pandas anzuwenden, führen Sie die folgenden Schritte aus:
groupby() in einem DataFrame aufrufen. filter() mit der filter_function-Methode auf jede Gruppe an. filter_function sollte für jede Gruppe einen booleschen Wert zurückgeben. Angenommen, wir haben den folgenden Pandas DataFrame:
<code>df = pd.DataFrame([[1, 2], [1, 3], [5, 6]], columns=['A', 'B'])</code>
Um die Gruppen zu finden, deren Summe in Spalte B größer als 4 ist, können wir den folgenden Code verwenden:
<code>result = df.groupby('A').filter(lambda x: x['B'].sum() > 4)</code>Das Ergebnis ist ein neuer DataFrame, der Zeilen aus den Gruppen enthält, die die Filterkriterien erfüllen:
<code>print(result)</code>
Ausgabe:
<code> A B 0 1 2 1 1 3</code>
filter_function kann jede gültige Python-Funktion sein, die eine Pandas-Gruppe als Eingabe akzeptiert und einen booleschen Wert zurückgibt. filter_function keinen Zugriff auf die zur Gruppierung verwendeten Spalten hat. Wenn Sie auf diese Spalten zugreifen müssen, können Sie sie manuell nach Spalte gruppieren, bevor Sie den Filter anwenden. Das obige ist der detaillierte Inhalt vonWie implementiert man die GROUP BY HAVING-Klausel von SQL in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
Was bedeutet vram?
Der Index überschreitet die Array-Grenzen. Lösung
Pycharm-Methode zum Öffnen einer neuen Datei
So verwenden Sie die Randbreite
Der Unterschied zwischen MS Office und WPS Office
So lösen Sie verstümmelten SecureCRT-Code
Was bedeutet der Aufforderungston „Douyin sw'?
So erstatten Sie den von Douyin aufgeladenen Doucoin zurück