溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Pandas GroupBy對(duì)象 索引與迭代方法

發(fā)布時(shí)間:2020-09-20 21:30:51 來(lái)源:腳本之家 閱讀:257 作者:Claroja 欄目:開(kāi)發(fā)技術(shù)

如下所示:

import pandas as pd
df = pd.DataFrame({'性別' : ['男', '女', '男', '女',
        '男', '女', '男', '男'],
      '成績(jī)' : ['優(yōu)秀', '優(yōu)秀', '及格', '差',
        '及格', '及格', '優(yōu)秀', '差'],
      '年齡' : [15,14,15,12,13,14,15,16]})
GroupBy=df.groupby("性別")

GroupBy.iter()

GroupBy對(duì)象是一個(gè)迭代對(duì)象,每次迭代結(jié)果是一個(gè)元組,元組的第一個(gè)元素是該組的名稱(就是groupby的列的元素名稱),第二個(gè)元素是該組的具體信息,是一個(gè)數(shù)據(jù)框,索引是以前的數(shù)據(jù)框的總索引

for name,group in GroupBy:
 print(name)
 print(group)
女
 年齡 性別 成績(jī)
1 14 女 優(yōu)秀
3 12 女 差
5 14 女 及格
男
 年齡 性別 成績(jī)
0 15 男 優(yōu)秀
2 15 男 及格
4 13 男 及格
6 15 男 優(yōu)秀
7 16 男 差

GroupBy.groups

顯示分組的組名,以及所對(duì)應(yīng)的索引

print(GroupBy.groups)
{'女': Int64Index([1, 3, 5], dtype='int64'), '男': Int64Index([0, 2, 4, 6, 7], dtype='int64')}

GroupBy.indices

類似于GroupBy.groups

print(GroupBy.indices)
{'女': array([1, 3, 5], dtype=int64), '男': array([0, 2, 4, 6, 7], dtype=int64)}

GroupBy.get_group(name[, obj])

獲得某一個(gè)分組的具體信息

In [2]: GroupBy.get_group("男")
Out[2]: 
 年齡 性別 成績(jī)
0 15 男 優(yōu)秀
2 15 男 及格
4 13 男 及格
6 15 男 優(yōu)秀
7 16 男 差

Grouper([key, level, freq, axis, sort])

應(yīng)用

可以先通過(guò)循環(huán)獲得所有的組的名稱

for name in GroupBy:
 print(name)# 獲得所有分組的名稱
 GroupBy.get_group(name) #獲得所有該名稱的數(shù)據(jù)

以上這篇Pandas GroupBy對(duì)象 索引與迭代方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI