成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python處理大數據的2個神奇操作

開發 后端 大數據
Python有個處理大數據的庫,結合xlrd庫,在做一些大數據的處理統計工作的時候很好用,譬如做性能測試,你的結果數據如何統計,python有個庫pandas,這個就很擅長做這個工作,這里就講2個pandas的騷操作。

Python有個處理大數據的庫,結合xlrd庫,在做一些大數據的處理統計工作的時候很好用,譬如做性能測試,你的結果數據如何統計,python有個庫pandas,這個就很擅長做這個工作,這里就講2個pandas的騷操作。 pandas中groupby、Grouper和agg函數的使用。這2個函數作用類似,都是對數據集中的一類屬性進行聚合操作,比如統計一個用戶在每個月內的全部花銷,統計某個屬性的最大、最小、累和、平均等數值。 

Python處理大數據的2個神奇操作

統計“ext price”這個屬性在每個月的累和(sum)值

  1. import pandas as pd 
  2. import collections 
  3. df = pd.read_excel("D:/Download/chrome/sample-salesv3.xlsx"
  4. #print (df.head(10)) 
  5. df["date"] = pd.to_datetime(df["date"]) 
  6. # print (df.head(10)) 
  7. df1 = df.set_index("date").resample("M")['ext price'].sum() 
  8. # print(df1.head())  
Python處理大數據的2個神奇操作

統計每個用戶每個月"ext price"這個屬性的sum值,利用Grouper

  1. df2 = df.groupby(["name",pd.Grouper(key = "date",freq="M")])["ext price"
  2. print(df2.head(10))  
Python處理大數據的2個神奇操作

Agg

agg函數,它提供基于列的聚合操作。而groupby可以看做是基于行,或者說index的聚合操作。

從實現上看,groupby返回的是一個DataFrameGroupBy結構,這個結構必須調用聚合函數(如sum)之后,才會得到結構為Series的數據結果。

而agg是DataFrame的直接方法,返回的也是一個DataFrame。當然,很多功能用sum、mean等等也可以實現。但是agg更加簡潔, 而且傳給它的函數可以是字符串,也可以自定義,參數是column對應的子DataFrame

獲取"ext price","quantity","unit price"3列的各自的累計值和均值

  1. df3 = df[["ext price","quantity","unit price"]].agg(["sum","mean"]) 
  2. print(df3.head())  
Python處理大數據的2個神奇操作

可以針對不同的列使用不同的聚合函數

  1. df4 = df.agg({"ext price":["sum","mean"],"quantity":["sum","mean"],"unit price":["mean"]}) 
  2. print(df4.head())  
Python處理大數據的2個神奇操作

也可以自定義函數,比如,統計sku中,購買次數最多的產品編號,通過lambda表達式來做。

  1. #統計sku中,購買次數最多的產品編號 
  2. get_max = lambda x:x.value_counts(dropna=False).index[0] 
  3. get_max.__name__ = "most frequent" 
  4. df5 = df.agg({"ext price":["sum","mean"], 
  5.  "quantity":["sum","mean"], 
  6.  "unit price":["mean"], 
  7.  "sku":[get_max] 
  8.  }) 
  9. print(df5)  
Python處理大數據的2個神奇操作

如果希望輸出的列按照某個順序排列,可以使用collections的OrderedDict

  1. agg_dict = { 
  2.  "ext price":["sum","mean"], 
  3.  "quantity":["sum","mean"], 
  4.  "unit price":["mean"], 
  5.  "sku":[get_max] 
  6. #按照列名的長度排序。OrderedDict的順序是跟插入順序一致的 
  7. df6 = df.agg(collections.OrderedDict(sorted(agg_dict.items(),key=lambda x:len(x[0])))) 
  8. print(df6)  
Python處理大數據的2個神奇操作

源數據的鏈接:https://github.com/chris1610/pbpython/tree/master/data

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2015-09-10 14:40:32

大數據神奇

2020-06-08 07:52:31

Python開發工具

2013-02-26 09:21:05

大數據微軟奧斯卡

2017-07-26 17:45:05

2013-06-06 10:49:51

2017-11-14 05:04:01

大數據編程語言數據分析

2025-06-09 10:15:00

FastAPIPython

2025-06-04 08:05:00

Peewee?數據庫開發

2019-02-21 15:34:08

數據分析師大數據可視化

2024-11-14 12:00:00

Python開源大數據

2025-06-09 07:25:00

filelock數據庫

2025-06-10 08:00:00

Pygalpython

2025-05-29 10:00:00

ZODBPython數據庫

2025-06-05 08:10:00

PyneconePythonWeb 應用

2025-06-05 10:00:00

GensimPython

2025-06-04 10:05:00

Gooey開源Python

2025-05-27 08:00:00

Pythonemoji

2016-10-17 13:56:48

大數據大數據分析

2022-08-25 17:47:21

PythonExcel

2024-12-18 16:16:10

Python圖像處理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久精 | 欧美久久国产精品 | 国产成人精品午夜视频免费 | 午夜影院毛片 | 91亚洲欧美| 精品国产网 | 日韩免费高清视频 | 欧美成人免费在线视频 | 国产在线精品一区二区三区 | 久久久久国产一区二区三区 | 久在线| 国产精品久久久久久久久免费 | 国产在线区 | 亚洲国产高清高潮精品美女 | 精品久久电影 | 亚洲欧洲日韩精品 中文字幕 | 午夜私人影院在线观看 | 国产一区二区三区在线免费观看 | 久久五月婷 | 一区二区三区四区电影 | 久久久www成人免费无遮挡大片 | 在线免费观看欧美 | 国产精品久久久久久婷婷天堂 | 久久最新精品 | 天堂在线1 | www精品美女久久久tv | 欧美日韩黄色一级片 | 欧美在线看片 | 欧美国产精品一区二区 | 91视频精选 | 亚洲国产一区二区视频 | 国产福利精品一区 | 先锋av资源在线 | 亚洲男人天堂2024 | 免费视频久久 | 91极品视频 | 日韩精品一区二区三区在线播放 | 久久精品免费观看 | 国产一级毛片精品完整视频版 | 久久爱一区 | 成年网站在线观看 |