[英]Pandas mutliIndex sort by group
我想將值保持相同的順序(降序),但我無法按索引級別 0 對以下幀進行分組。 代碼為 0512 的塊應該按代碼降序排列在一起。
code product count
0510 あたたか新潟こしひかり 5kg 1
0511 キッコ−マン 味わいリッチ減塩しょうゆ 450ml 1
7プレミアム 國産果汁使用ゆずぽん酢 200ml 1
0512 キリン 生茶 525ml 1
キリンレモン 450ml 1
コカ・コーラ い・ろ・は・す もも 555ML 1
サントリー なっちゃん オレンジ 425ml 1
サントリー プレミアムボス ブラック 490ml 2
サントリー 天然水南アルプス 2L ケース 1
サントリー 天然水南アルプス 2L ペット 1
サントリー 朝摘みオレンジ&天然水 540ml 1
大塚 ポカリスエット 900ML ペット 1
森永 inゼリー エネルギーレモン 180g 1
綾鷹 525MLペット 2
7プレミアム パイナップルサイダー 500ml 1
7プレミアム フルーツオ・レ 500ml 1
GAクラフトマン ダークモカ 440ml 1
UCC 職人の珈琲 無糖 930ML ペット 1
0513 アサヒ オフ 500ml×6 1
キリン 本麒麟 500ml 1
萬上 濃厚熟成本みりん 1L 1
東村山純米酒 720ml 1
0514 ブルボン プチポテトコンソメ味 45g 1
ロッテ ガーナローストミルク 50g 1
ロッテ グリーンガム 9枚 1
我的代碼
data = df.groupby(['code','product']).size().reset_index(name='counts').set_index(['code','product'])
data1 = data.sort_values(by=['counts','code'], ascending=False).groupby(['product','code']).sum()
編輯:
我可以看到第二個 groupby 將代碼放在一起,但把每個代碼的計數降序弄亂了,正如我們在 0512 中看到的那樣。
您應該將列表傳遞給第二行中的升序參數,如下所示:
data1 = data.sort_values(by=['counts','code'], ascending=[False,False]).groupby(['product','code']).sum()
否則,它將采用默認值,即“代碼”列的 True 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.