Ich habe eine Probe eines unter Datensatz (nur die ersten paar Zeilen zeigen, aber es gibt 193 Zeilen):Gruppiert groupby automatisch alle nicht numerischen Spalten in Pandas?
country,beer_servings,spirit_servings,wine_servings,total_litres_of_pure_alcohol,continent
Afghanistan,0,0,0,0.0,Asia
Albania,89,132,54,4.9,Europe
Algeria,25,0,14,0.7,Africa
Andorra,245,138,312,12.4,Europe
Angola,217,57,45,5.9,Africa
Antigua & Barbuda,102,128,45,4.9,North America
...
Als ich dies auszuführen: drinks.groupby('continent').head()
ich mit 30 Zeilen zurück einen Datenrahmen zu bekommen. Aber in diesen 30 Zeilen habe ich immer noch doppelte Namen für die continent
. Zum Beispiel in dem Bild unten sehen Sie, dass Europe
zweimal wiederholt wird (in den Zeilen 1 und 3):
ich nicht in der Lage bin zu verstehen, warum ich immer noch mit zwei Reihen mit dem gleichen Kontinent, wenn Ich gruppiere ursprünglich nach Kontinent?
In diesem Fall ist die groupby
Operation auch Gruppierung durch die country
, obwohl ich es nie in der groupby
Funktion angegeben? Da ich in SQL weiß, sollten Sie eine Aggregatfunktion wie max
, min
, sum
usw. verwenden. Aber in diesem Fall muss ich keine Aggregatfunktion übergeben, und ich bekomme das obige Ergebnis.
Aber indirekt ist es noch Gruppierung nach "Kontinent" und "Land", wenn ich keinen Parameter an den Kopf richtig gebe? Da es mehrere Reihen mit dem Kontinent als "Europa" gibt. – CapturedTree
Das ist richtig. – DyZ
Was ich gesagt habe, ist richtig? – CapturedTree