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

Python?Pandas中的分組聚合操作詳解

 更新時(shí)間:2023年11月16日 08:46:19   作者:懸崖上的金魚  
Pandas是Python中用于數(shù)據(jù)分析的重要工具,提供了豐富的數(shù)據(jù)操作方法,本文將介紹?Pandas?中的數(shù)據(jù)分組方法以及不同的聚合操作,感興趣的小伙伴可以學(xué)習(xí)一下

Pandas 是 Python 中用于數(shù)據(jù)分析的重要工具,它提供了豐富的數(shù)據(jù)操作方法。在數(shù)據(jù)分析過程中,經(jīng)常需要對(duì)數(shù)據(jù)進(jìn)行分組聚合操作。本文將介紹 Pandas 中的數(shù)據(jù)分組方法以及不同的聚合操作,并結(jié)合代碼示例進(jìn)行說明。

完整Excel數(shù)據(jù)

讀取數(shù)據(jù)并進(jìn)行簡(jiǎn)單分組

首先,我們通過 Pandas 讀取 Excel 文件,并使用單個(gè)列進(jìn)行分組,并應(yīng)用聚合函數(shù)。示例代碼如下:

df1 = pd.read_excel('C:\\Users\\liuchunlin2\\Desktop\\數(shù)據(jù)1.xlsx')
df = df1.groupby('店鋪名稱', as_index=False).sum()
print(df)

多列分組及聚合函數(shù)應(yīng)用

接著,我們演示了如何使用多個(gè)列進(jìn)行分組,并應(yīng)用聚合函數(shù):

df2 = df1.groupby(['店鋪名稱','訂單號(hào)'], as_index=False).sum()
print(df2)

自定義聚合函數(shù)的應(yīng)用

在這個(gè)示例中,我們定義了一個(gè)自定義聚合函數(shù) custom_agg,并將其應(yīng)用在分組聚合操作中:

def custom_agg(x):
    return x.max() - x.min()

result = df1.groupby('店鋪名稱', as_index=False)['銷售數(shù)量'].agg(custom_agg)
print(result)

同時(shí)應(yīng)用多個(gè)聚合函數(shù)

我們還可以同時(shí)應(yīng)用多個(gè)聚合函數(shù),示例如下:

df3 = df1.groupby('店鋪名稱', as_index=False).agg({'銷售數(shù)量': 'sum', '銷售金額': 'mean'})
print(df3)

迭代分組

Pandas 支持迭代分組的操作,通過以下示例可以看到迭代分組的效果:

for group, data in df1.groupby('店鋪名稱'):
    print(group)  # 分組的鍵值
    print(data)  # 所有屬于該分組的數(shù)據(jù)

條件過濾

根據(jù)條件過濾分組:

df4 = df1.groupby('店鋪名稱').filter(lambda x: x['銷售金額'].sum() > 300)
print(df4)

轉(zhuǎn)換分組及分組排序

最后,我們演示了分組數(shù)據(jù)的轉(zhuǎn)換以及分組排序的操作:

df1['NewColumn'] = df1.groupby('店鋪名稱')['銷售數(shù)量'].transform(lambda x:x.sum())
print(df1)

排序

df5 = df1.groupby('店鋪名稱').sum().sort_values('銷售數(shù)量', ascending=True)
print(df5)

以上就是關(guān)于 Pandas 分組聚合操作的詳細(xì)介紹,通過這些示例代碼和解釋,相信讀者對(duì) Pandas 中的分組聚合操作有了更深入的理解。

總結(jié):在數(shù)據(jù)分析中,對(duì)數(shù)據(jù)進(jìn)行分組聚合是一項(xiàng)常見且重要的操作,Pandas 提供了豐富的功能來實(shí)現(xiàn)這一目的,包括單列分組、多列分組、自定義聚合函數(shù)、迭代分組、數(shù)據(jù)導(dǎo)出、條件過濾、分組轉(zhuǎn)換以及分組排序等操作,能夠滿足大部分?jǐn)?shù)據(jù)分析需求。

完整代碼

import pandas as pd
import numpy as np

# 讀取兩個(gè) Excel 文件
df1 = pd.read_excel('C:\\Users\\liuchunlin2\\Desktop\\數(shù)據(jù)1.xlsx')

#使用單個(gè)列進(jìn)行分組,并應(yīng)用聚合函數(shù)
df=df1.groupby('店鋪名稱', as_index=False).sum()
#df=df1.groupby('店鋪名稱', as_index=False).aggregate({'銷售數(shù)量': 'sum'})
print(df)

#使用多個(gè)列進(jìn)行分組,并應(yīng)用聚合函數(shù):
df2=df1.groupby(['店鋪名稱','訂單號(hào)'], as_index=False).sum()
print(df2)

# 定義自定義聚合函數(shù)
def custom_agg(x):
    return x.max() - x.min()
# 使用自定義聚合函數(shù)對(duì) 'Column2' 進(jìn)行聚合
result = df1.groupby('店鋪名稱', as_index=False)['銷售數(shù)量'].agg(custom_agg)
print(result)

# 同時(shí)應(yīng)用多個(gè)聚合函數(shù)
df3=df1.groupby('店鋪名稱', as_index=False).agg({'銷售數(shù)量': 'sum', '銷售金額': 'mean'})
print(df3)

# 迭代分組
for group, data in df1.groupby('店鋪名稱'):
    print(group)  # 分組的鍵值
    print(data)  # 所有屬于該分組的數(shù)據(jù)

df3.to_excel('merged.xlsx', index=False)
print('這是一條數(shù)據(jù)分割線')

#根據(jù)條件過濾分組
df4=df1.groupby('店鋪名稱').filter(lambda x: x['銷售金額'].sum() > 300)
print(df4)

#轉(zhuǎn)換分組
df1['NewColumn'] = df1.groupby('店鋪名稱')['銷售數(shù)量'].transform(lambda x:x.sum())  # 對(duì) 'Column2' 在每個(gè)分組內(nèi)進(jìn)行轉(zhuǎn)換操作
#df=df1.groupby('店鋪名稱', as_index=False)['銷售數(shù)量'].transform('sum')
print(df1)

#分組排序
df5=df1.groupby('店鋪名稱').sum().sort_values('銷售數(shù)量', ascending=True)  # ascending=True 升序 ascending=False 降序
print(df5)

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

相關(guān)文章

  • python實(shí)現(xiàn)測(cè)試工具(一)——命令行發(fā)送get請(qǐng)求

    python實(shí)現(xiàn)測(cè)試工具(一)——命令行發(fā)送get請(qǐng)求

    這篇文章主要介紹了python如何實(shí)現(xiàn)命令行發(fā)送get請(qǐng)求,幫助大家更好的利用python進(jìn)行測(cè)試工作,感興趣的朋友可以了解下
    2020-10-10
  • win7 下搭建sublime的python開發(fā)環(huán)境的配置方法

    win7 下搭建sublime的python開發(fā)環(huán)境的配置方法

    Sublime Text具有漂亮的用戶界面和強(qiáng)大的功能,例如代碼縮略圖,Python的插件,代碼段等。還可自定義鍵綁定,菜單和工具欄。Sublime Text的主要功能包括:拼寫檢查,書簽,完整的 Python API,Goto功能,即時(shí)項(xiàng)目切換,多選擇,多窗口等等。
    2014-06-06
  • Python?Streamlit制作交互式可視化網(wǎng)頁應(yīng)用實(shí)例

    Python?Streamlit制作交互式可視化網(wǎng)頁應(yīng)用實(shí)例

    這篇文章主要為大家介紹了Python?Streamlit制作交互式可視化網(wǎng)頁應(yīng)用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Python List列表對(duì)象內(nèi)置方法實(shí)例詳解

    Python List列表對(duì)象內(nèi)置方法實(shí)例詳解

    這篇文章主要介紹了Python List列表對(duì)象內(nèi)置方法,結(jié)合實(shí)例形式詳細(xì)分析了Python列表list各種常用內(nèi)置方法的功能與使用技巧,需要的朋友可以參考下
    2019-10-10
  • 基于Python 的語音重采樣函數(shù)解析

    基于Python 的語音重采樣函數(shù)解析

    這篇文章主要介紹了基于Python 的語音重采樣函數(shù)解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • pandas DataFrame 刪除重復(fù)的行的實(shí)現(xiàn)方法

    pandas DataFrame 刪除重復(fù)的行的實(shí)現(xiàn)方法

    這篇文章主要介紹了pandas DataFrame 刪除重復(fù)的行的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • PyTorch實(shí)現(xiàn)線性回歸詳細(xì)過程

    PyTorch實(shí)現(xiàn)線性回歸詳細(xì)過程

    本文介紹PyTorch實(shí)現(xiàn)線性回歸,線性關(guān)系是一種非常簡(jiǎn)單的變量之間的關(guān)系,因變量和自變量在線性關(guān)系的情況下,可以使用線性回歸算法對(duì)一個(gè)或多個(gè)因變量和自變量間的線性關(guān)系進(jìn)行建模,該模型的系數(shù)可以用最小二乘法進(jìn)行求解,需要的朋友可以參考一下
    2022-03-03
  • 使用Numpy打亂數(shù)組或打亂矩陣行

    使用Numpy打亂數(shù)組或打亂矩陣行

    這篇文章主要介紹了使用Numpy打亂數(shù)組或打亂矩陣行問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • python使用OpenCV模塊實(shí)現(xiàn)圖像的融合示例代碼

    python使用OpenCV模塊實(shí)現(xiàn)圖像的融合示例代碼

    這篇文章主要介紹了python使用OpenCV模塊實(shí)現(xiàn)圖像的融合示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • python3 sorted 如何實(shí)現(xiàn)自定義排序標(biāo)準(zhǔn)

    python3 sorted 如何實(shí)現(xiàn)自定義排序標(biāo)準(zhǔn)

    這篇文章主要介紹了python3 sorted 如何實(shí)現(xiàn)自定義排序標(biāo)準(zhǔn),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03

最新評(píng)論