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

盤一盤 Python 的 itertools:數(shù)據(jù)分組

開發(fā)
分組處理數(shù)據(jù),你只會(huì)使用 pandas? 那你就錯(cuò)了。其實(shí)不借助第三方庫,我們也可以輕松實(shí)現(xiàn)數(shù)據(jù)分組。

分組處理數(shù)據(jù),你只會(huì)使用 pandas? 那你就錯(cuò)了。其實(shí)不借助第三方庫,我們也可以輕松實(shí)現(xiàn)數(shù)據(jù)分組。

今天內(nèi)容:

  • 使用字典做數(shù)據(jù)分組
  • 使用 itertools 的 groupby 實(shí)現(xiàn)數(shù)據(jù)分組
  • 如何封裝函數(shù),使其更具通用性

分組

字典是python中非常常用的一種數(shù)據(jù)結(jié)構(gòu)。我們可以用字典來實(shí)現(xiàn)數(shù)據(jù)分組。

比如,我們有這樣一個(gè)列表:

people_list = [
    {'姓名': '張三', '性別': '男', '年齡': '25'},
    {'姓名': '李四', '性別': '女', '年齡': '30'},
    {'姓名': '王五', '性別': '男', '年齡': '22'},
    {'姓名': '趙六', '性別': '女', '年齡': '28'},
    {'姓名': '周六', '性別': '女', '年齡': '26'},
    {'姓名': '陳七', '性別': '男', '年齡': '24'},
    {'姓名': '楊八', '性別': '女', '年齡': '27'},
]

我們想按照性別分組,統(tǒng)計(jì)平級(jí)年齡和人數(shù)。

使用字典的實(shí)現(xiàn)方式:

結(jié)果:

現(xiàn)在結(jié)果字典有兩項(xiàng)數(shù)據(jù)(男性和女性),分別對(duì)應(yīng)著兩個(gè)列表(里面就是該性別的數(shù)據(jù),是一個(gè)個(gè)字典)。

上面代碼,可以使用 defaultdict 改進(jìn):

行21: 當(dāng)訪問一個(gè)不存在的鍵時(shí),defaultdict 會(huì)自動(dòng)創(chuàng)建一個(gè)空列表,并返回它。

如果不想使用字典,而是想使用 itertools 的 groupby 實(shí)現(xiàn),可以這樣:

行15:分組前對(duì)數(shù)據(jù)做排序才行

封裝函數(shù)

現(xiàn)在已經(jīng)對(duì)數(shù)據(jù)進(jìn)行了分組,所謂的分組統(tǒng)計(jì)(平級(jí)年齡和人數(shù)),只不過是對(duì)每個(gè)性別的列表進(jìn)行遍歷,統(tǒng)計(jì)每個(gè)人的年齡,然后求和。

但統(tǒng)計(jì)處理多種多樣,為此我們可以封裝成通用的函數(shù)。

假設(shè)封裝的函數(shù)叫 group_by ,看看我們期待的使用方式:

  • 行9:參數(shù) by :指定分組的字段,也可以指定多個(gè)字段,比如 by=["性別", "年齡"] 。
  • 行9:參數(shù) aggregate :指定聚合函數(shù)。

確定了使用方式,那么我們可以開始封裝函數(shù):

  • 行20-23:讓參數(shù) by 支持單個(gè)字符串或多列分組
  • 行29:再次遍歷分組的結(jié)果,然后應(yīng)用聚合函數(shù)
責(zé)任編輯:趙寧寧 來源: 數(shù)據(jù)大宇宙
相關(guān)推薦

2025-01-08 14:34:58

2022-03-25 13:45:37

黑客網(wǎng)絡(luò)攻擊數(shù)據(jù)泄露

2012-07-11 13:32:11

虛擬化

2024-01-08 08:30:30

接口線程模型

2020-06-05 15:48:26

網(wǎng)絡(luò)安全技術(shù)漏洞

2024-07-10 10:04:48

2015-03-02 11:23:51

2012-08-21 15:24:07

騰訊App

2021-10-29 09:55:20

人工神經(jīng)網(wǎng)絡(luò)

2010-04-29 11:23:08

Apple

2015-09-23 11:43:00

小米副卡虛擬運(yùn)營商

2012-07-25 11:29:41

2017-05-18 12:40:44

AlphaGoAI柯潔

2017-08-02 17:15:05

互聯(lián)網(wǎng)

2023-12-18 14:31:51

技術(shù)大模型人機(jī)交互

2021-07-11 07:10:11

機(jī)械盤固態(tài)盤硬盤

2017-09-15 09:25:07

2023-03-09 12:00:45

AI科學(xué)家

2022-05-06 08:08:14

藍(lán)盤機(jī)械硬盤紫盤
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 91最新视频 | 91免费看片 | 国产高清在线观看 | 午夜欧美| 久99久视频| 在线观看av网站 | 亚洲精品免费在线观看 | 国产精品视频免费看 | 国产精品视频播放 | 欧美亚洲国语精品一区二区 | 久久精品国产免费 | 狠狠色香婷婷久久亚洲精品 | 蜜桃视频在线观看免费视频网站www | 欧美在线二区 | 日韩中文字幕免费在线观看 | 日韩视频精品在线 | 久久精品这里精品 | 91青娱乐在线 | 涩涩视频大全 | 欧美mv日韩mv国产网站91进入 | av电影手机在线看 | 色视频网站 | 狠狠涩| 日韩成人久久 | 日韩欧美不卡 | 瑟瑟免费视频 | 国产精品久久久久久中文字 | 在线观看日韩av | 国产福利在线免费观看 | 成人免费视频观看视频 | 国产精品乱码一区二区三区 | 亚洲成人在线免费 | 国产成人jvid在线播放 | 亚洲一二三区不卡 | 亚洲a视频 | 美女在线观看av | 亚洲精品乱码久久久久久按摩观 | 亚洲精品中文在线 | 亚洲精品一区二区在线观看 | 国产乱码久久久久久 | 欧美日一区二区 |