国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

python DataFrame數據分組統(tǒng)計groupby()函數

這篇具有很好參考價值的文章主要介紹了python DataFrame數據分組統(tǒng)計groupby()函數。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“=================================================”)

df1 = df.groupby([‘class_1’, ‘class_2’]).sum() # 分組統(tǒng)計求和

print(df1)

dataframe groupby,2024年程序員學習,python,開發(fā)語言


1.3 對DataFrameGroupBy對象列名索引(對指定列統(tǒng)計計算)


其中,df.groupby(‘class_1’)得到一個DataFrameGroupBy對象,對該對象可以使用列名進行索引,以對指定的列進行統(tǒng)計。

如:df.groupby(‘class_1’)[‘num’].sum()

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109], [‘b’, ‘B’, ‘1等’, 112], [‘c’, ‘A’, ‘1等’, 125], [‘d’, ‘B’, ‘2等’, 120],

[‘e’, ‘B’, ‘1等’, 126], [‘f’, ‘B’, ‘2等’, 133], [‘g’, ‘A’, ‘2等’, 124], [‘h’, ‘B’, ‘1等’, 134],

[‘i’, ‘A’, ‘2等’, 117], [‘j’, ‘A’, ‘2等’, 128], [‘h’, ‘A’, ‘1等’, 130], [‘i’, ‘B’, ‘2等’, 122]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“=================================================”)

df1 = df.groupby(‘class_1’)[‘num’].sum()

print(df1)

代碼運行結果同上。


2. 對分組數據進行迭代

===================================================================================

2.1 對一級分類的DataFrameGroupBy對象進行遍歷


for name, group in DataFrameGroupBy_object

其中,name指分類的類名,group指該類的所有數據。

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109], [‘b’, ‘C’, ‘1等’, 112], [‘c’, ‘A’, ‘1等’, 125], [‘d’, ‘B’, ‘2等’, 120],

[‘e’, ‘B’, ‘1等’, 126], [‘f’, ‘B’, ‘2等’, 133], [‘g’, ‘C’, ‘2等’, 124], [‘h’, ‘A’, ‘1等’, 134],

[‘i’, ‘C’, ‘2等’, 117], [‘j’, ‘A’, ‘2等’, 128], [‘h’, ‘B’, ‘1等’, 130], [‘i’, ‘C’, ‘2等’, 122]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“===============================”)

獲取目標數據。

df1 = df[[‘name’, ‘class_1’, ‘num’]]

for name, group in df1.groupby(‘class_1’):

print(name)

print(“=============================”)

print(group)

print(“==================================================”)

dataframe groupby,2024年程序員學習,python,開發(fā)語言

dataframe groupby,2024年程序員學習,python,開發(fā)語言


2.2 對二級分類的DataFrameGroupBy對象進行遍歷


對二級分類的DataFrameGroupBy對象進行遍歷,

for (key1, key2), group in df.groupby([‘class_1’, ‘class_2’]) 為例

不同于一級分類的是, (key1, key2)是一個由多級類別組成的元組,而group表示該多級分類類別下的數據。

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109], [‘b’, ‘C’, ‘1等’, 112], [‘c’, ‘A’, ‘1等’, 125], [‘d’, ‘B’, ‘2等’, 120],

[‘e’, ‘B’, ‘1等’, 126], [‘f’, ‘B’, ‘2等’, 133], [‘g’, ‘C’, ‘2等’, 124], [‘h’, ‘A’, ‘1等’, 134],

[‘i’, ‘C’, ‘2等’, 117], [‘j’, ‘A’, ‘2等’, 128], [‘h’, ‘B’, ‘1等’, 130], [‘i’, ‘C’, ‘2等’, 122]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“===============================”)

for (key1, key2), group in df.groupby([‘class_1’, ‘class_2’]):

print(key1, key2)

print(“=============================”)

print(group)

print(“==================================================”)

程序運行結果如下:

dataframe groupby,2024年程序員學習,python,開發(fā)語言

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(部分)


3. agg()函數

=================================================================================

使用groupby()函數和agg()函數 實現 分組聚合操作運算。

3.1一般寫法_對目標數據使用同一聚合函數


以 分組求均值、求和 為例

給agg()傳入一個列表

df1.groupby([‘class_1’, ‘class_2’]).agg([‘mean’, ‘sum’])

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109, 144], [‘b’, ‘C’, ‘1等’, 112, 132], [‘c’, ‘A’, ‘1等’, 125, 137], [‘d’, ‘B’, ‘2等’, 120, 121],

[‘e’, ‘B’, ‘1等’, 126, 136], [‘f’, ‘B’, ‘2等’, 133, 127], [‘g’, ‘C’, ‘2等’, 124, 126], [‘h’, ‘A’, ‘1等’, 134, 125],

[‘i’, ‘C’, ‘2等’, 117, 125], [‘j’, ‘A’, ‘2等’, 128, 133], [‘h’, ‘B’, ‘1等’, 130, 122], [‘i’, ‘C’, ‘2等’, 122, 111]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num1’, ‘num2’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“===============================”)

df1 = df[[‘class_1’, ‘class_2’, ‘num1’, ‘num2’]]

print(df1.groupby([‘class_1’, ‘class_2’]).agg([‘mean’, ‘sum’]))

dataframe groupby,2024年程序員學習,python,開發(fā)語言


3.2 對不同列使用不同聚合函數


給agg()方法傳入一個字典

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109, 144], [‘b’, ‘C’, ‘1等’, 112, 132], [‘c’, ‘A’, ‘1等’, 125, 137], [‘d’, ‘B’, ‘2等’, 120, 121],

[‘e’, ‘B’, ‘1等’, 126, 136], [‘f’, ‘B’, ‘2等’, 133, 127], [‘g’, ‘C’, ‘2等’, 124, 126], [‘h’, ‘A’, ‘1等’, 134, 125],

[‘i’, ‘C’, ‘2等’, 117, 125], [‘j’, ‘A’, ‘2等’, 128, 133], [‘h’, ‘B’, ‘1等’, 130, 122], [‘i’, ‘C’, ‘2等’, 122, 111]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num1’, ‘num2’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“===============================”)

df1 = df[[‘class_1’, ‘num1’, ‘num2’]]

print(df1.groupby(‘class_1’).agg({‘num1’: [‘mean’, ‘sum’], ‘num2’: [‘sum’]}))

dataframe groupby,2024年程序員學習,python,開發(fā)語言


3.3 自定義函數寫法


也可以自定義一個函數(以名為max1為例)傳入agg()中。

import pandas as pd

data = [[‘a’, ‘A’, ‘1等’, 109, 144], [‘b’, ‘C’, ‘1等’, 112, 132], [‘c’, ‘A’, ‘1等’, 125, 137], [‘d’, ‘B’, ‘2等’, 120, 121],

[‘e’, ‘B’, ‘1等’, 126, 136], [‘f’, ‘B’, ‘2等’, 133, 127], [‘g’, ‘C’, ‘2等’, 124, 126], [‘h’, ‘A’, ‘1等’, 134, 125],

[‘i’, ‘C’, ‘2等’, 117, 125], [‘j’, ‘A’, ‘2等’, 128, 133], [‘h’, ‘B’, ‘1等’, 130, 122], [‘i’, ‘C’, ‘2等’, 122, 111]]

index = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]

columns = [‘name’, ‘class_1’, ‘class_2’, ‘num1’, ‘num2’]

df = pd.DataFrame(data=data, index=index, columns=columns)

print(df)

print(“===============================”)

max1 = lambda x: x.value_counts(dropna=False).index[0]

max1.name = “類別數量最多”

df1 = df.agg({‘class_1’: [max1],

‘num1’: [‘sum’, ‘mean’],

‘num2’: [‘sum’, ‘mean’]})

print(df1)

dataframe groupby,2024年程序員學習,python,開發(fā)語言


4. 通過 字典 和 Series 對象進行分組統(tǒng)計

=================================================================================================

**groupy()不僅僅可以傳入單個列,或多個列組成的列表,

也可以傳入一個字典或者一個Series來實現分組。**

4.1通過一個字典


自我介紹一下,小編13年上海交大畢業(yè),曾經在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現在。

深知大多數Python工程師,想要提升技能,往往是自己摸索成長或者是報班學習,但對于培訓機構動則幾千的學費,著實壓力不小。自己不成體系的自學效果低效又漫長,而且極易碰到天花板技術停滯不前!

因此收集整理了一份《2024年Python開發(fā)全套學習資料》,初衷也很簡單,就是希望能夠幫助到想自學提升又不知道該從何學起的朋友,同時減輕大家的負擔。
dataframe groupby,2024年程序員學習,python,開發(fā)語言
dataframe groupby,2024年程序員學習,python,開發(fā)語言
dataframe groupby,2024年程序員學習,python,開發(fā)語言
dataframe groupby,2024年程序員學習,python,開發(fā)語言
dataframe groupby,2024年程序員學習,python,開發(fā)語言
dataframe groupby,2024年程序員學習,python,開發(fā)語言

既有適合小白學習的零基礎資料,也有適合3年以上經驗的小伙伴深入學習提升的進階課程,基本涵蓋了95%以上Python開發(fā)知識點,真正體系化!

由于文件比較大,這里只是將部分目錄大綱截圖出來,每個節(jié)點里面都包含大廠面經、學習筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且后續(xù)會持續(xù)更新

如果你覺得這些內容對你有幫助,可以添加V獲?。簐ip1024c (備注Python)
dataframe groupby,2024年程序員學習,python,開發(fā)語言

做了那么多年開發(fā),自學了很多門編程語言,我很明白學習資源對于學一門新語言的重要性,這些年也收藏了不少的Python干貨,對我來說這些東西確實已經用不到了,但對于準備自學Python的人來說,或許它就是一個寶藏,可以給你省去很多的時間和精力。

別在網上瞎學了,我最近也做了一些資源的更新,只要你是我的粉絲,這期福利你都可拿走。

我先來介紹一下這些東西怎么用,文末抱走。


(1)Python所有方向的學習路線(新版)

這是我花了幾天的時間去把Python所有方向的技術點做的整理,形成各個領域的知識點匯總,它的用處就在于,你可以按照上面的知識點去找對應的學習資源,保證自己學得較為全面。

最近我才對這些路線做了一下新的更新,知識體系更全面了。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(2)Python學習視頻

包含了Python入門、爬蟲、數據分析和web開發(fā)的學習視頻,總共100多個,雖然沒有那么全面,但是對于入門來說是沒問題的,學完這些之后,你可以按照我上面的學習路線去網上找其他的知識資源進行進階。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(3)100多個練手項目

我們在看視頻學習的時候,不能光動眼動腦不動手,比較科學的學習方法是在理解之后運用它們,這時候練手項目就很適合了,只是里面的項目比較多,水平也是參差不齊,大家可以挑自己能做的項目去練練。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(4)200多本電子書

這些年我也收藏了很多電子書,大概200多本,有時候帶實體書不方便的話,我就會去打開電子書看看,書籍可不一定比視頻教程差,尤其是權威的技術書籍。

基本上主流的和經典的都有,這里我就不放圖了,版權問題,個人看看是沒有問題的。

(5)Python知識點匯總

知識點匯總有點像學習路線,但與學習路線不同的點就在于,知識點匯總更為細致,里面包含了對具體知識點的簡單說明,而我們的學習路線則更為抽象和簡單,只是為了方便大家只是某個領域你應該學習哪些技術棧。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(6)其他資料

還有其他的一些東西,比如說我自己出的Python入門圖文類教程,沒有電腦的時候用手機也可以學習知識,學會了理論之后再去敲代碼實踐驗證,還有Python中文版的庫資料、MySQL和HTML標簽大全等等,這些都是可以送給粉絲們的東西。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

這些都不是什么非常值錢的東西,但對于沒有資源或者資源不是很好的學習者來說確實很不錯,你要是用得到的話都可以直接抱走,關注過我的人都知道,這些都是可以拿到的。文章來源地址http://www.zghlxwxcb.cn/news/detail-857686.html

匯總**

知識點匯總有點像學習路線,但與學習路線不同的點就在于,知識點匯總更為細致,里面包含了對具體知識點的簡單說明,而我們的學習路線則更為抽象和簡單,只是為了方便大家只是某個領域你應該學習哪些技術棧。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

(6)其他資料

還有其他的一些東西,比如說我自己出的Python入門圖文類教程,沒有電腦的時候用手機也可以學習知識,學會了理論之后再去敲代碼實踐驗證,還有Python中文版的庫資料、MySQL和HTML標簽大全等等,這些都是可以送給粉絲們的東西。

dataframe groupby,2024年程序員學習,python,開發(fā)語言

這些都不是什么非常值錢的東西,但對于沒有資源或者資源不是很好的學習者來說確實很不錯,你要是用得到的話都可以直接抱走,關注過我的人都知道,這些都是可以拿到的。

到了這里,關于python DataFrame數據分組統(tǒng)計groupby()函數的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 如何統(tǒng)計DataFrame中各列數據分類的各個不同數據出現的次數

    可以使用 value_counts 函數來統(tǒng)計每個不同數據在數據列中出現的次數。 例如,假設有一個名為 df 的 DataFrame,其中包含一列名為 \\\'col\\\' 。 要統(tǒng)計 \\\'col\\\' 列中各個不同數據的出現次數,可以使用以下代碼: 此代碼將返回一個由各個數據和它們在 \\\'col\\\' 列中出現的次數組成的 Series。

    2024年02月05日
    瀏覽(20)
  • Pandas怎樣實現groupby分組統(tǒng)計

    Pandas怎樣實現groupby分組統(tǒng)計

    一、如何實現分組統(tǒng)計 導入數據 二、分組使用聚合函數做數據統(tǒng)計 1、單個列groupby,查詢所有數據列的統(tǒng)計 我們看到: 2、多個列groupby,查詢所有數據列的統(tǒng)計 我們看到:(‘A’,‘B’)成對變成了二級索引 3、同時查看多種數據統(tǒng)計 4、查看單列的結果數據統(tǒng)計 5、不同列使

    2024年02月09日
    瀏覽(16)
  • R語言dplyr包select函數刪除dataframe數據中包含指定字符串內容的數據列(drop columns in dataframe)

    參考鏈接 我有一個數據框,想刪除列名包含“Pval”的列 大功告成。

    2024年02月12日
    瀏覽(21)
  • Python中Pandas庫提供的函數——pd.DataFrame的基本用法

    pd.DataFrame 是 Pandas 庫中的一個類,用于創(chuàng)建和操作數據框(DataFrame)。DataFrame 是 Pandas 的核心數據結構,用于以表格形式和處理數據,類似提供電子表格或數據庫表格。類了創(chuàng)建 pd.DataFrame 數據框、訪問數據、進行數據操作和分析的方法和屬性。 表格形式 :DataFrame是一個二維

    2024年02月05日
    瀏覽(30)
  • Python數據攻略-DataFrame的數據操作

    當今時代,數據無處不在,它如同一種語言,講述著數字背后的故事。但是要理解這些故事需要合適的工具。在數據分析的世界中,Pandas無疑是一位出色的翻譯家。本文將深入探討如何利用Pandas進行數據訪問、檢查、清理以及可視化,展現數據分析的藝術。 當面對海量數據時

    2024年02月07日
    瀏覽(23)
  • 詳解Pandas分組函數groupby

    在數據分析時,經常需要將數據分成不同的群組,pandas中的groupby()函數可以完美地完成各種分組操作。 分組是根據DataFrame/Series的某個字段值,將該字段的值相等的行/列分到同一組中,每一個小組是一個新的DataFrame或Series。 groupby()也可以按DataFrame中的多個字段分組,當多個字

    2024年02月02日
    瀏覽(30)
  • R語言中使用as.data.frame函數將矩陣數據轉化為dataframe數據

    R語言中使用as.data.frame函數將矩陣數據轉化為dataframe數據 在R語言中,我們經常需要處理和分析不同類型的數據。矩陣是一種常見的數據結構,而dataframe則是更靈活和功能更豐富的數據結構。如果我們有一個矩陣數據,需要將其轉化為dataframe數據以便進行更多的數據操作和分析

    2024年02月07日
    瀏覽(19)
  • 使用R語言中的as.matrix函數將數據框(dataframe)轉換為矩陣數據

    使用R語言中的as.matrix函數將數據框(dataframe)轉換為矩陣數據 在R語言中,數據框(dataframe)是一種常用的數據結構,它由行和列組成,每列可以包含不同類型的數據。然而,有時候我們需要將數據框轉換為矩陣數據,以便進行矩陣運算或使用矩陣相關的函數。在這種情況下

    2024年02月07日
    瀏覽(35)
  • python將dataframe數據導入MySQL

    python將dataframe數據導入MySQL

    mysql操作 創(chuàng)建數據庫test和table pymysql操作 python安裝pymysql pymysql連接數據庫 創(chuàng)建游標 插入數據 完整代碼 導入數據并啟動 使用pandas導入MySQL 數據庫連接引擎 ‘mysql+pymysql://[user]:[pwd]@localhost:3306/[database]?charset=utf8’ 使用to_sql方法 name : str Name of SQL table. con : sqlalchemy.engine.(Engine o

    2024年02月16日
    瀏覽(21)
  • pandas分組與聚合groupby()函數詳解

    pandas分組與聚合groupby()函數詳解

    一、groupby分組與聚合 分組與聚合通常是分析數據的一種方式,通常與一些統(tǒng)計函數一起使用,查看數據的分組情況 DataFrame.groupby(by=None,?axis=0,?level=None,?as_index=True,?sort=True,?group_keys=_NoDefault.no_default,?squeeze=_NoDefault.no_default,?observed=False,?dropna=True) :使用映射器或按一Serie

    2024年02月14日
    瀏覽(11)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包