簡體   English   中英

按分組 dataframe 上的前 n 個結果可視化列

[英]Visualize columns by top n results on Grouped dataframe

我有以下 2 個數據框,第一個 dataframe df1告訴第二個df2每個月有多少條記錄。
(JFYI, df1是從df2本身計算出來的,並按月分組以保持計數)

mainid  counts          month  
    1   13              JAN   
    2   15              JAN
    3   10              JAN 
    2   10              FEB
    3   5               FEB
    1   12              MAR     

第二個df

mainid  stamp A                Value       month 
1       '2012-01-08 18:15:05'  'Value 01'   JAN
1       '2012-03-08 19:15:05'  'Value 02'   MAR
#... 25 (13+12 records for mainid 1 for JAN and MAR months of 2012)
2       '2012-01-08 18:15:05'  'Value 01'    JAN
2       '2012-02-08 19:15:05'  'Value 04'    FEB
#... 25 (15+10 records for mainid 2 for JAN and FEB months of 2012)
3       '2012-01-08 19:15:05'  'Value 06'    JAN
3       '2012-02-08 12:15:05'  'Value 06'    FEB
#... 15 (10+5 records for mainid 3 for JAN and FEB months of 2012)

現在,從df2開始,我想在df1中顯示前 3 個印章和前 3 個values 我可以這樣計算 top3 (但這對於每個mainid都不可行)

top3_stamps = df[df['mainid' == 1]].sort_values(['month','stamp A']).head(3)
top3_values = df[df['mainid' == 1]].sort_values(['month', 'Value']).head(3)

我沒有得到,我怎樣才能找到每個mainid的那些 top3 結果並將其與df1結合起來

利用:

top3_stamps = df.sort_values('stamp A').groupby('mainid').head(3)

暫無
暫無

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

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