0
私はこのような慎重にソートされたデータフレームを持っている:ソートせずにグループを反復処理する方法は?
x = pd.DataFrame({'col1':['b', 'e','e', 'g','g', 'f','f'],
'col2':['f', 'g','f', 'f','e', 'g','e'],
'col3':[ 1 , 7 , 2 , 6 , 7 , 20, 5 ]})
私は順序
names, totals, fs = zip(* list((name, total(group), f(group)) for name, group in x.groupby('col1')) )
out = pd.DataFrame({'lang':names,
'total':totals,
'partners':tails})
しかしout
に行がcol1
によって並べ替えられていますを維持し、1行ごとにグループを集計します。 x.groupby('col1').heads()
は[name for name, _ in x.groupby('col1')]
戻っ「F」が「G」の後ろにとどまるべき['b', 'e', 'f', 'g']
どのようにソートすることなく、グループを通じて、私がループすることができます?のように反復し、正しい順序ですべてのものをもたらしている間
'groupby(" col1 "、sort = False)は必要なものを与えますか?期待される成果をあげた最小限の例を掲示すればよいだろう。 – Cleb
@Clebは私が必要なすべてです!どうもありがとうございます!私はドキュメントをチェックすべきだったが、私はあなたがそれを無効にできるとは思わなかった... – peer