欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python?groupby函數(shù)圖文詳解

 更新時(shí)間:2022年07月12日 09:07:31   作者:Vergil_Zsh  
pandas中DataFrame提供了一個(gè)靈活高效的groupby功能,它使你能以一種自然的方式對(duì)數(shù)據(jù)集進(jìn)行切片、切塊、摘要等操作,下面這篇文章主要給大家介紹了關(guān)于Python?groupby函數(shù)詳解的相關(guān)資料,需要的朋友可以參考下

一、分組原理

核心:

1、不論分組鍵是數(shù)組、列表、字典、Series、函數(shù),只要其與待分組變量的軸長(zhǎng)度一致都可以傳入groupby進(jìn)行分組。

2、默認(rèn)axis=0按行分組,可指定axis=1對(duì)列分組。

groupby()語(yǔ)法格式

DataFrame.groupby(by=None, axis=0, level=None, as_index=True, group_keys=True, squeeze=False,  observed=False, **kwargs)

groupby原理

groupby就是按XX分組,比如將一個(gè)數(shù)據(jù)集按A進(jìn)行分組,效果如下

使用groupby實(shí)現(xiàn)功能

import numpy as np
import pandas as pd
 
data = pd.DataFrame({
    'name': ['Tom', 'Kaggle', 'Litter', 'Sam', 'Sam', 'Sam'],
    'race': ['B', 'C', 'D', 'E', 'B', 'C'],
    'age': [37.0, 61.0, 56.0, 87.0, 58.0, 34.0],
    'signs_of_mental_illness': [True, True, False, False, False, False]
})
 
data.groupby('race')

 返回結(jié)果如上  得到一個(gè)叫DataFrameGroupBy的東西,pandas不能直接顯示出來(lái) 可以調(diào)用list顯示出來(lái)

groupby()的配合函數(shù) 函數(shù) 適用場(chǎng)景備注.mean()均值.count()計(jì)數(shù).min()最小值.mean().unstack()求均值,聚合表的層次索引不堆疊.size()計(jì)算分組大小GroupBy的size方法,將返回一個(gè)含有分組大小的Series.apply().agg()

這里演示.mean()和.count()

# mean()
data.groupby('name')['age'].mean()
# count()
data.groupby('name')['age'].count()
data.groupby('age').count()

 也可以根據(jù)單鍵多列進(jìn)行聚合

# 單鍵多列聚合
data.groupby('name')[['race','age',]].count()

 .agg操作 可以取多個(gè)函數(shù)進(jìn)行選擇 有時(shí)候我們既需要平均值,有需要計(jì)數(shù)(也可是取一個(gè))

agg為列表

print(data.groupby('name')['age'].agg(['mean']))
 
print(data.groupby('name')['age'].agg(['mean','count']))

也可以傳入字典,對(duì)組內(nèi)不同列采取不同的操作

print(data.groupby('race').agg({'age': np.median, 'signs_of_mental_illness': np.mean}))

.apply()

可以使用我們自己所創(chuàng)建的函數(shù)

print('apply之前')
grouped = data.groupby('name')
for name, group in grouped:
    print(name)
    print(group)
print('\n')
print('apply之后')
print(data.groupby('name').apply(lambda x: x.head(2)))

 簡(jiǎn)單操作基本介紹完成

有時(shí)候需要將聚合的另一列放到一起 并且取消鍵的重復(fù)值 這個(gè)時(shí)候可以這樣做

上面是構(gòu)建的數(shù)據(jù),需要對(duì)訂購(gòu)時(shí)間進(jìn)行處理,這里我們是將月份+天數(shù)/30,然后對(duì)ID列進(jìn)行去重,并將后面Time列計(jì)算的結(jié)果放到一起

import numpy as np
import pandas as pd
 
 
data = pd.read_excel('訂購(gòu)時(shí)間預(yù)測(cè)2.xlsx')
def cut_m_d(x):
	return round(x.month + x.day / 30, 2)
 
data['m_d'] = data['Time'].apply(cut_m_d)
grouped = data.groupby('ID')
# 這一步是去重(ID),不去重會(huì)出現(xiàn)錯(cuò)誤
result = grouped['m_d'].unique()
result2 = result.reset_index()
print(result2)

總結(jié)

到此這篇關(guān)于Python groupby函數(shù)詳解的文章就介紹到這了,更多相關(guān)groupby函數(shù)詳解內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • OpenCV實(shí)現(xiàn)背景分離(證件照背景替換)

    OpenCV實(shí)現(xiàn)背景分離(證件照背景替換)

    本文主要介紹了OpenCV實(shí)現(xiàn)背景分離(證件照背景替換),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Python Selenium截圖功能實(shí)現(xiàn)代碼

    Python Selenium截圖功能實(shí)現(xiàn)代碼

    這篇文章主要介紹了Python Selenium截圖功能實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Python通過(guò)len函數(shù)返回對(duì)象長(zhǎng)度

    Python通過(guò)len函數(shù)返回對(duì)象長(zhǎng)度

    這篇文章主要介紹了Python通過(guò)len函數(shù)返回對(duì)象長(zhǎng)度,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • 用python實(shí)現(xiàn)文件備份

    用python實(shí)現(xiàn)文件備份

    大家好,本篇文章主要講的是用python實(shí)現(xiàn)文件備份,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話(huà)記得收藏一下
    2022-01-01
  • Python中字典與恒等運(yùn)算符的用法分析

    Python中字典與恒等運(yùn)算符的用法分析

    這篇文章主要介紹了Python中字典與恒等運(yùn)算符的用法,結(jié)合實(shí)例形式分析了Python中字典與恒等運(yùn)算符功能、常見(jiàn)用法及操作注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • JSON文件及Python對(duì)JSON文件的讀寫(xiě)操作

    JSON文件及Python對(duì)JSON文件的讀寫(xiě)操作

    JSON和XML都是互聯(lián)網(wǎng)上數(shù)據(jù)交換的主要載體。這篇文章主要介紹了JSON文件及Python對(duì)JSON文件的讀寫(xiě)操作,需要的朋友可以參考下
    2018-10-10
  • Python第三方庫(kù)h5py_讀取mat文件并顯示值的方法

    Python第三方庫(kù)h5py_讀取mat文件并顯示值的方法

    今天小編就為大家分享一篇Python第三方庫(kù)h5py_讀取mat文件并顯示值的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • pandas分區(qū)間,算頻率的實(shí)例

    pandas分區(qū)間,算頻率的實(shí)例

    今天小編就為大家分享一篇pandas分區(qū)間,算頻率的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • Flask框架使用DBUtils模塊連接數(shù)據(jù)庫(kù)操作示例

    Flask框架使用DBUtils模塊連接數(shù)據(jù)庫(kù)操作示例

    這篇文章主要介紹了Flask框架使用DBUtils模塊連接數(shù)據(jù)庫(kù)操作,結(jié)合實(shí)例形式較為詳細(xì)的分析了flask框架使用DBUtils模塊連接數(shù)據(jù)庫(kù)的常見(jiàn)操作技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2018-07-07
  • Python裝飾器有哪些絕妙的用法

    Python裝飾器有哪些絕妙的用法

    本文主要介紹了Python裝飾器有哪些絕妙的用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評(píng)論