国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python Pandas聚合函數的應用示例

89542767 / 391人閱讀

  Python Pandas作為常見的應用Python的一門工具,常常是作為聚合函數去進行使用的,那么,我們應該怎么去使用這類聚合函數呢?下面就具體的一類應用實例,下面給大家詳細解答一下,大家要仔細的閱讀哦。


  Python Pandas聚合函數


  在前一節,我們重點介紹了窗口函數。我們知道,窗口函數可以與聚合函數一起使用,聚合函數指的是對一組數據求總和、最大值、最小值以及平均值的操作,本節重點講解聚合函數的應用。


  應用聚合函數


  首先讓我們創建一個DataFrame對象,然后對聚合函數進行應用。


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),index=pd.date_range('12/14/2020',periods=5),columns=['A','B','C','D'])
  print(df)
  #窗口大小為3,min_periods最小觀測值為1
  r=df.rolling(window=3,min_periods=1)
  print(r)


  輸出結果:


  A B C D


  2020-12-14 0.941621 1.205489 0.473771-0.348169


  2020-12-15-0.276954 0.076387 0.104194 1.537357


  2020-12-16 0.582515 0.481999-0.652332-1.893678


  2020-12-17-0.286432 0.923514 0.285255-0.739378


  2020-12-18 2.063422-0.465873-0.946809 1.590234


  Rolling[window=3,min_periods=1,center=False,axis=0]


  1)對整體聚合


  您可以把一個聚合函數傳遞給DataFrame,示例如下:


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),index=pd.date_range('12/14/2020',periods=5),columns=['A','B','C','D'])
  print(df)
  #窗口大小為3,min_periods最小觀測值為1
  r=df.rolling(window=3,min_periods=1)
  #使用aggregate()聚合操作
  print(r.aggregate(np.sum))


  輸出結果:


  A B C D


  2020-12-14 0.133713 0.746781 0.499385 0.589799


  2020-12-15-0.777572 0.531269 0.600577-0.393623


  2020-12-16 0.408115-0.874079 0.584320 0.507580


  2020-12-17-1.033055-1.185399-0.546567 2.094643


  2020-12-18 0.469394-1.110549-0.856245 0.260827


  A B C D


  2020-12-14 0.133713 0.746781 0.499385 0.589799


  2020-12-15-0.643859 1.278050 1.099962 0.196176


  2020-12-16-0.235744 0.403971 1.684281 0.703756


  2020-12-17-1.402513-1.528209 0.638330 2.208601


  2020-12-18-0.155546-3.170027-0.818492 2.863051


  2)對任意某一列聚合


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),index=pd.date_range('12/14/2020',periods=5),columns=['A','B','C','D'])
  #窗口大小為3,min_periods最小觀測值為1
  r=df.rolling(window=3,min_periods=1)
  #對A列聚合
  print(r['A'].aggregate(np.sum))

  輸出結果:


  2020-12-14 1.051501


  2020-12-15 1.354574


  2020-12-16 0.896335


  2020-12-17 0.508470


  2020-12-18 2.333732


  Freq:D,Name:A,dtype:float64


  3)對多列數據聚合


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),index=pd.date_range('12/14/2020',periods=5),columns=['A','B','C','D'])
  #窗口大小為3,min_periods最小觀測值為1
  r=df.rolling(window=3,min_periods=1)
  #對A/B兩列聚合
  print(r['A','B'].aggregate(np.sum))


  輸出結果:


  A B


  2020-12-14 0.639867-0.229990


  2020-12-15 0.352028 0.257918


  2020-12-16 0.637845 2.643628


  2020-12-17 0.432715 2.428604


  2020-12-18-1.575766 0.969600


  4)對單列應用多個函數


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),index=pd.date_range('12/14/2020',periods=5),columns=['A','B','C','D'])
  #窗口大小為3,min_periods最小觀測值為1
  r=df.rolling(window=3,min_periods=1)
  #對A/B兩列聚合
  print(r['A','B'].aggregate([np.sum,np.mean]))


  輸出結果:


  sum mean


  2020-12-14-0.469643-0.469643


  2020-12-15-0.626856-0.313428


  2020-12-16-1.820226-0.606742


  2020-12-17-2.007323-0.669108


  2020-12-18-0.595736-0.198579


  5)對不同列應用多個函數


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(5,4),
  index=pd.date_range('12/11/2020',periods=5),
  columns=['A','B','C','D'])
  r=df.rolling(window=3,min_periods=1)
  print(r['A','B'].aggregate([np.sum,np.mean]))


  輸出結果:


  A B


  sum mean sum mean


  2020-12-14-1.428882-1.428882-0.417241-0.417241


  2020-12-15-1.315151-0.657576-1.580616-0.790308


  2020-12-16-2.093907-0.697969-2.260181-0.753394


  2020-12-17-1.324490-0.441497-1.578467-0.526156


  2020-12-18-2.400948-0.800316-0.452740-0.150913


  6)對不同列應用不同函數


  import pandas as pd
  import numpy as np
  df=pd.DataFrame(np.random.randn(3,4),
  index=pd.date_range('12/14/2020',periods=3),
  columns=['A','B','C','D'])
  r=df.rolling(window=3,min_periods=1)
  print(r.aggregate({'A':np.sum,'B':np.mean}))


  輸出結果:


  A B


  2020-12-14 0.503535-1.301423


  2020-12-15 0.170056-0.550289


  2020-12-16-0.086081-0.140532


  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家帶來幫助。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/128342.html

相關文章

  • 【數據科學系統學習】Python # 數據分析基本操作[四] 數據規整化和數據聚合與分組運算

    摘要:數據規整化清理轉換合并重塑數據聚合與分組運算數據規整化清理轉換合并重塑合并數據集可根據一個或多個鍵將不同中的行鏈接起來。函數根據樣本分位數對數據進行面元劃分。字典或,給出待分組軸上的值與分組名之間的對應關系。 本篇內容為整理《利用Python進行數據分析》,博主使用代碼為 Python3,部分內容和書本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個...

    The question 評論0 收藏0
  • pandas聚合函數agg具體用法

      pandas其實匯集了python函數的一個數據庫,主要是用來調用數據的,作為其中的聚合函數,那么,其中的函數agg的具體用法是怎么樣的呢?下面就給大家詳細的解答下。  今天看到pandas的聚合函數agg,比較陌生,平時的工作中處理數據的時候使用的也比較少,為了加深印象,總結一下使用的方法,其實還是挺好用的。  DataFrame.agg(func,axis=0,*args,**kwargs...

    89542767 評論0 收藏0
  • 新書《全棧數據之門》完整目錄

    摘要:全棧數據之門前言自強不息,厚德載物,自由之光,你是我的眼基礎,從零開始之門文件操作權限管理軟件安裝實戰經驗與,文本處理文本工具的使用家族的使用綜合案例數據工程,必備分析文件探索內容探索交差并補其他常用的命令批量操作結語快捷鍵,之門提高效率光 showImg(https://segmentfault.com/img/bVK0aK?w=350&h=350); 全棧數據之門 前言 自強不息,...

    yibinnn 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<