661 Stimmen

Konvertieren einer Pandas GroupBy-Ausgabe von Series in DataFrame

Ich beginne mit Eingabedaten wie diesen

df1 = pandas.DataFrame( { 
    "Name" : ["Alice", "Bob", "Mallory", "Mallory", "Bob" , "Mallory"] , 
    "City" : ["Seattle", "Seattle", "Portland", "Seattle", "Seattle", "Portland"] } )

In gedruckter Form sieht das so aus:

   City     Name
0   Seattle    Alice
1   Seattle      Bob
2  Portland  Mallory
3   Seattle  Mallory
4   Seattle      Bob
5  Portland  Mallory

Die Gruppierung ist ganz einfach:

g1 = df1.groupby( [ "Name", "City"] ).count()

und Drucken ergibt eine GroupBy Objekt:

                  City  Name
Name    City
Alice   Seattle      1     1
Bob     Seattle      2     2
Mallory Portland     2     2
        Seattle      1     1

Aber was ich letztendlich will, ist ein weiteres DataFrame-Objekt, das alle Zeilen im GroupBy-Objekt enthält. Mit anderen Worten: Ich möchte das folgende Ergebnis erhalten:

                  City  Name
Name    City
Alice   Seattle      1     1
Bob     Seattle      2     2
Mallory Portland     2     2
Mallory Seattle      1     1

Ich kann in der Pandas-Dokumentation nicht ganz erkennen, wie man dies erreichen kann. Jeder Hinweis wäre willkommen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X