Ich lerne gerade Pandas kennen und ich komme über ein konzeptionelles Problem nicht hinaus. Mein Datenrahmen ist wie folgt:min() Operation auf verschachtelten groupby in Pandas
df=pd.DataFrame({'ANIMAL':[1,1,1,1,1,2,2,2],
'AGE_D' : [3,6,47,377,698,1,9,241],
'AGE_Y' : [1,1,1,2,2,1,1,1]})
würde Ich mag eine verschachtelte Gruppe innerhalb Tieres und age_y tun und dann die Minuten auf der Untergruppe auswählen. gewünschte Ausgabe wäre dann:
ANIMAL AGE_Y AGE_D
1 1 3
1 2 377
2 1 1
Ich kann dies tun, ohne im Tiere nisten, z.B. wenn meine df2 = Teilmenge für ANIMAL = 1 dann
df2.loc[df2.groupby('AGE_Y')['AGE_D'].idxmin()]
Aber all das, was ich mit Verschachtelung das Tier in der Gruppe versucht, von were unsuccesful. Ich vermute, dass meine Reihenfolge der Operationen falsch ist ... Wie soll ich darüber gehen?
Dupe: http://stackoverflow.com/questions/23394476/keep-other-columns-when-using- min-with-groupby im Grunde der einzige Unterschied ist, dass Sie auf mehrere Spalten gruppieren möchten – EdChum
Nachdem ich die Lösung gesehen habe, kann ich sehen, wie das ähnlich ist, aber wenn Sie es nicht wissen, ist es nicht so einfach abzuleiten. Ich habe tatsächlich den von Ihnen geposteten Thread angesehen, stolperte jedoch mit der verschachtelten Gruppierung. – branwen85
Grundsätzlich die Sache, die hier zu beachten ist, dass Sie auf mehreren Spalten gruppieren können, die wie der Schritt aussieht, den Sie hier vermissten – EdChum