<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      pandas之groupby

      數據準備

      import pandas as pd
      
      product_info = {
          "產品": ["李子", "桃子", "香蕉", "餃子", "饅頭", "包子", "豬肉", "牛肉"],
          "分類": ["水果", "水果", "水果", "生鮮", "生鮮", "生鮮", "肉類", "肉類"],
          "價格": [23, 12, 5, 19, 2, 3, 20, 40],
          "銷量": [1821, 232, 675, 210, 4320, 5829, 9762, 1320],
      }
      
      df = pd.DataFrame(product_info)
      print(df)
      """
         產品  分類  價格    銷量
      0  李子  水果  23  1821
      1  桃子  水果  12   232
      2  香蕉  水果   5   675
      3  餃子  生鮮  19   210
      4  饅頭  生鮮   2  4320
      5  包子  生鮮   3  5829
      6  豬肉  肉類  20  9762
      7  牛肉  肉類  40  1320
      """
      

      方法介紹

      單列聚合求平均、求和

      # 1、單列聚合求平均,返回DataFrame  
      df1 = df.groupby('分類', as_index=False)['價格'].mean()  
      print(df1)
      '''
      0  水果  13.333333
      1  生鮮   8.000000
      2  肉類  30.000000
      '''
      
      
      # 2、單列聚合求和,返回DataFrame  
      df2 = df.groupby('分類', as_index=False)['價格'].sum()  
      print(df2)
      '''
         分類  價格
      0  水果  40
      1  生鮮  24
      2  肉類  60
      '''
      

      多列聚合求平均

      df = df.groupby('分類', as_index=False)[['價格', '銷量']].mean()  
      print(df)  
      '''
         分類         價格           銷量
      0  水果  13.333333   909.333333
      1  生鮮   8.000000  3453.000000
      2  肉類  30.000000  5541.000000
      '''
      

      多列多個聚合

      df = df.groupby('分類')[["價格", "銷量"]].agg(['mean', 'max'])  
      print(df)  
      '''
                 價格               銷量      
               mean max         mean   max
      分類                                  
      水果  13.333333  23   909.333333  1821
      生鮮   8.000000  19  3453.000000  5829
      肉類  30.000000  40  5541.000000  9762
      '''
      

      對聚合結果重命名

      df = df.groupby('分類', as_index=False)[['價格']].agg(平均價格=('價格', 'mean'), 最高價格=('價格', 'max'))  
      print(df)
      '''
         分類       平均價格  最高價格
      0  水果  13.333333    23
      1  生鮮   8.000000    19
      2  肉類  30.000000    40
      '''
      

      多列分組

      df = df.groupby(['產品', '分類'], as_index=False).agg(平均價格=('價格', 'mean'))  
      print(df)
      '''
         產品  分類  平均價格
      0  包子  生鮮   3.0
      1  李子  水果  23.0
      2  桃子  水果  12.0
      3  牛肉  肉類  40.0
      4  豬肉  肉類  20.0
      5  餃子  生鮮  19.0
      6  饅頭  生鮮   2.0
      7  香蕉  水果   5.0
      '''
      

      多列分組排序

      # 根據平均價格降序排序  
      df = df.groupby(['產品', '分類'], as_index=False).agg(平均價格=('價格', 'mean')).sort_values(by='平均價格', ascending=False)  
      print(df)
      '''
         產品  分類  平均價格
      3  牛肉  肉類  40.0
      1  李子  水果  23.0
      4  豬肉  肉類  20.0
      5  餃子  生鮮  19.0
      2  桃子  水果  12.0
      7  香蕉  水果   5.0
      0  包子  生鮮   3.0
      6  饅頭  生鮮   2.0
      '''
      

      topN

      # 1、銷量最高的2個分類 
      df = df.groupby('分類')['銷量'].nlargest(2)  
      print(df)
      '''
      分類   
      水果  0    1821
          2     675
      生鮮  5    5829
          4    4320
      肉類  6    9762
          7    1320
      Name: 銷量, dtype: int64
      '''
      
      # 2、銷量最少的3個分類 
      df = df.groupby('分類')['銷量'].nsmallest(3)  
      print(df)
      '''
      分類   
      水果  1     232
          2     675
          0    1821
      生鮮  3     210
          4    4320
          5    5829
      肉類  7    1320
          6    9762
      Name: 銷量, dtype: int64
      '''
      

      唯一值

      df = df.groupby('分類', as_index=False).agg(unique_values=('產品', 'unique'))  
      print(df)
      '''
         分類 unique_values
      0  水果  [李子, 桃子, 香蕉]
      1  生鮮  [餃子, 饅頭, 包子]
      2  肉類      [豬肉, 牛肉]
      '''
      

      唯一值的數量

      df = df.groupby('分類', as_index=False).agg(num_unique_values=('產品', 'nunique'))  
      print(df)
      '''
         分類  num_unique_values
      0  水果                  3
      1  生鮮                  3
      2  肉類                  2
      '''
      

      分組的個數

      df = df.groupby('分類').ngroups  
      print(df)
      '''
      3
      '''
      

      獲得某個特定分組

      # 分類、產品跟get_group的參數必須對應
      df = df.groupby(['分類', '產品']).get_group(('水果', '李子'))  
      print(df)
      '''
         產品  分類  價格    銷量
      0  李子  水果  23  1821
      '''
      

      rank

      # 對每個組中的行進行排序,如:按價格進行降序排序 
      df['dense_rank'] = df.groupby('分類')['價格'].rank(ascending=False, method='dense')  
      print(df)  
      '''
         產品  分類  價格    銷量  dense_rank
      0  李子  水果  23  1821         3.0
      1  桃子  水果  12   232         2.0
      2  香蕉  水果   5   675         1.0
      3  餃子  生鮮  19   210         3.0
      4  饅頭  生鮮   2  4320         1.0
      5  包子  生鮮   3  5829         2.0
      6  豬肉  肉類  20  9762         1.0
      7  牛肉  肉類  40  1320         2.0
      '''
      

      展開求和

      df['price'] = df.groupby('分類')['價格'].expanding().sum().values  
      print(df)
      '''
         產品  分類  價格    銷量  price
      0  李子  水果  23  1821   23.0
      1  桃子  水果  12   232   35.0
      2  香蕉  水果   5   675   40.0
      3  餃子  生鮮  19   210   19.0
      4  饅頭  生鮮   2  4320   21.0
      5  包子  生鮮   3  5829   24.0
      6  豬肉  肉類  20  9762   20.0
      7  牛肉  肉類  40  1320   60.0
      '''
      
      posted @ 2023-08-04 16:04  cnblogs用戶  閱讀(48)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 尤物tv国产精品看片在线| 成人欧美一区在线视频| 亚洲区中文字幕日韩精品| 91无码人妻精品一区| 亚洲成av人片在www鸭子| 亚在线观看免费视频入口| 日韩福利视频导航| 欧美成人午夜在线观看视频| 亚洲天堂亚洲天堂亚洲天堂| 女同另类激情在线三区| 亚洲av伊人久久综合性色| 中文字幕第一页国产精品| 忘忧草日本在线播放www| 亚洲精国产一区二区三区| 成人啪精品视频网站午夜| 中国孕妇变态孕交xxxx| 国产精品乱码久久久久久小说| 免费又黄又爽又猛的毛片| 亚洲欧美日韩在线码| 久久亚洲国产精品五月天| 亚洲性日韩精品一区二区| 国产精品久久久久aaaa| 人妻换着玩又刺激又爽| 欧美区一区二区三区| 日韩人妻精品中文字幕| 精品久久精品久久精品久久| 亚洲中文字幕久久精品蜜桃| 老色99久久九九爱精品| 国内熟妇人妻色在线三级| 中文字幕亚洲男人的天堂| 一本久久a久久精品综合| 国产爆乳无码视频在线观看3| 国产精品成人午夜久久| 久久成人国产精品免费软件| 男人天堂亚洲天堂女人天堂| 久久综合九色综合97婷婷| 亚洲一区久久蜜臀av| 国产乱码精品一区二区三上| 国产草草影院ccyycom| 亚洲精品麻豆一区二区| 国产成人剧情AV麻豆果冻|