簡體   English   中英

熊貓DataFrame Groupby排序問題

[英]Pandas DataFrame Groupby sorting issue

我有這種形式的數據框。 當我通過不需要的自動排序應用分組時,有沒有辦法做到這一點。

    import pandas as PD

d = {"ABC":["1.iab units (desktop + mobile) + non-expanding adhesion","1.iab units (desktop + mobile) + non-expanding adhesion","1.iab units (desktop + mobile) + non-expanding adhesion",
"2.iab units (desktop + mobile) + non-expanding adhesion","2.iab units (desktop + mobile) + non-expanding adhesion","2.iab units (desktop + mobile) + non-expanding adhesion","10.iab units (desktop + mobile) + non-expanding adhesion","10.iab units (desktop + mobile) + non-expanding adhesion","10.iab units (desktop + mobile) + non-expanding adhesion"],"Number":["361766","4280","275853","275853","73582","4024","8910","568861","85658"]}

data = PD.DataFrame(d)
print data



                                               ABC  Number
0  1.iab units (desktop + mobile) + non-expanding...  361766
1  1.iab units (desktop + mobile) + non-expanding...    4280
2  1.iab units (desktop + mobile) + non-expanding...  275853
3  2.iab units (desktop + mobile) + non-expanding...  275853
4  2.iab units (desktop + mobile) + non-expanding...   73582
5  2.iab units (desktop + mobile) + non-expanding...    4024
6  10.iab units (desktop + mobile) + non-expandin...    8910
7  10.iab units (desktop + mobile) + non-expandin...  568861
8  10.iab units (desktop + mobile) + non-expandin...   85658

在應用組時,它將按以下形式排序:

for plc, plc_name in data.groupby('ABC'):
  print plc_name

                                   ABC  Number
0  1.iab units (desktop + mobile) + non-expanding...  361766
1  1.iab units (desktop + mobile) + non-expanding...    4280
2  1.iab units (desktop + mobile) + non-expanding...  275853
                                                 ABC  Number
6  10.iab units (desktop + mobile) + non-expandin...    8910
7  10.iab units (desktop + mobile) + non-expandin...  568861
8  10.iab units (desktop + mobile) + non-expandin...   85658
                                                 ABC  Number
3  2.iab units (desktop + mobile) + non-expanding...  275853
4  2.iab units (desktop + mobile) + non-expanding...   73582
5  2.iab units (desktop + mobile) + non-expanding...    4024

有什么辦法可以像我這樣排序嗎

ABC Number
1.iab units (desktop + mobile) + non-expanding adhesion 361766
1.iab units (desktop + mobile) + non-expanding adhesion 4280
1.iab units (desktop + mobile) + non-expanding adhesion 275853
ABC Number
2.iab units (desktop + mobile) + non-expanding adhesion 8910
2.iab units (desktop + mobile) + non-expanding adhesion 568861
2.iab units (desktop + mobile) + non-expanding adhesion 85658
ABC Number
10.iab units (desktop + mobile) + non-expanding adhesion    346177
10.iab units (desktop + mobile) + non-expanding adhesion    73582
10.iab units (desktop + mobile) + non-expanding adhesion    4024

groupby sort = False

for plc, plc_name in data.groupby('ABC',sort=False):
  print(plc_name)

                                                 ABC  Number
0  1.iab units (desktop + mobile) + non-expanding...  361766
1  1.iab units (desktop + mobile) + non-expanding...    4280
2  1.iab units (desktop + mobile) + non-expanding...  275853
                                                 ABC  Number
3  2.iab units (desktop + mobile) + non-expanding...  275853
4  2.iab units (desktop + mobile) + non-expanding...   73582
5  2.iab units (desktop + mobile) + non-expanding...    4024
                                                 ABC  Number
6  10.iab units (desktop + mobile) + non-expandin...    8910
7  10.iab units (desktop + mobile) + non-expandin...  568861
8  10.iab units (desktop + mobile) + non-expandin...   85658

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM