2017-02-01 3 views
1

Ich habe eine große df.pandas und ich wollte eine Funktion, um eine Spalte GROUPBY und uniqe Werte in einer anderen Spalte und dann wieder den Index des max Zählwert, wie so zählen:Wie man Index nach groupby Zustand zurückgibt, den er trifft?

def groupby_fun(): 
    x = df.groupby(by=df['Column1'])['Column2'].nunique() 
    return [x.max()].index[0] 
groupby_fun() 

ich Dieser Fehler:

'builtin_function_or_method' object is not subscriptable 

was mache ich falsch, bitte?

+1

Was ist mit den eckigen Klammern um x.max()? –

+1

Plus sollte Index() sein, nicht eckige Klammern – Vaishali

+0

Das ist nicht das Problem dachte – haytham

Antwort

1

.idxmax() als Nickil Maveli Hinzufügen vorschlug gearbeitet:

df.groupby('Column1')['Column2'].nunique().idxmax() 
Verwandte Themen