„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum scheint Pandas GroupBy.apply die erste Zeile zu duplizieren?

Warum scheint Pandas GroupBy.apply die erste Zeile zu duplizieren?

Veröffentlicht am 09.11.2024
Durchsuche:876

Why Does Pandas GroupBy.apply Seem to Duplicate the First Row?

Pandas GroupBy.apply dupliziert die erste Gruppe: Das Verhalten verstehen

Bei Verwendung der Groupby-Funktion in Pandas kann es so aussehen, als ob die Apply-Methode eine Funktion zweimal auf die erste anwendet Zeile eines Datenrahmens. Dieses scheinbar unerwartete Verhalten ist beabsichtigt.

Der Zweck der Doppelanwendung

Die Apply-Funktion muss die Form der Daten bestimmen, die sie kombinieren wird. Um dies zu erreichen, ruft es die angegebene Funktion – in diesem Fall checkit – zweimal auf. Der erste Aufruf hilft dabei, die Form der Ausgabe abzuleiten, während der zweite die Operation für die Gruppe ausführt.

Den doppelten Effekt vermeiden

Abhängig von Ihrem Anwendungsfall können Sie die doppelte Anwendung vermeiden, indem Sie alternative verwenden Funktionen:

  • aggregate: Erfordert, dass der Rückgabewert eine zusammenfassende Statistik ist, z. B. der Mittelwert oder sum.
  • transform: Erfordert, dass der Rückgabewert die gleiche Form wie die Eingabegruppe hat.
  • filter: Erfordert, dass der Rückgabewert ist ein boolescher Index, der angibt, welche Zeilen beibehalten werden sollen.

Diese Funktionen erzwingen bestimmte Formen für den Rückgabewert, sodass kein Double erforderlich ist Anwendung.

Überlegungen zu Nebenwirkungen

Wenn die Funktion, die Sie anwenden, keine Nebenwirkungen hat – das heißt, sie ändert den ursprünglichen Datenrahmen nicht –, dann spielt die doppelte Anwendung wahrscheinlich keine Rolle. Wenn die Funktion jedoch Daten manipuliert, kann die doppelte Anwendung in der ersten Zeile zu unbeabsichtigten Folgen führen.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3