1. 程式人生 > >pandas python 分組統計的方法

pandas python 分組統計的方法

首先,看看本文所面向的應用場景:我們有一個數據集df,現在想統計資料中某一列每個元素的出現次數。這個在我們前面文章《如何畫直方圖》中已經介紹了方法,利用value_counts()就可以實現(具體回看文章)

但是,現在,我們考慮另外一個場景,我們假如要想統計其中兩列元素出現次數呢?舉個栗子:


在df資料集中,如果我們想統計A、B兩列的元素的出現情況,也就是說,得到如下表。


從上面的最後一列可以看到,在A、B兩列中,1 2 出現了2次,1 4 出現1次 ,1 6出現1次,2 3出現了2次, 2 4 出現1次, 3 1出現了1次

具體實現的程式碼:

import pandas as pd
df=pd.DataFrame([[1,2,2],[1,4,5],[1,2,4],[1,6,3],[2,3,1],[2,4,1],[2,3,5],[3,1,1]],columns=['A','B','C'])
gp=df.groupby(by=['A','B'])
gp.size()

所以,如果想統計更多列,只要在groupby()中的by引數新增就可以,例如統計3列。
gp=df.groupby(by=['A','B','C'])

由gp.size()得到的是可以mulitiindex Series。

下面,要轉化成DataFrame的結構。

newdf=gp.size()
newdf.reset_index(name='times')

其中name中引數就是我們可以為最後一列新增新的名字,例如這裡的“times”

這個時候newdf已經是DataFrame的型別了。

相關推薦

pandas python 分組統計方法

首先,看看本文所面向的應用場景:我們有一個數據集df,現在想統計資料中某一列每個元素的出現次數。這個在我們前面文章《如何畫直方圖》中已經介紹了方法,利用value_counts()就可以實現(具體回看文章) 但是,現在,我們考慮另外一個場景,我們假如要想統計其中兩列元素出現

pythonpandas分組統計

Pandas分組統計佔比 資料例如: 美贊臣標籤 2017-11-15       MOB      女性 110548715660 美贊臣標籤 2017-11-15       MOB      男性 104342715471 美贊臣標籤 2017-11-15     

python pandas常用資料處理方法

pandas 1、header = 0 不同於 header = None header = 0 表示 第0行為列 header = None 表示讀取的時候 認為沒有標題,全是資料 可以用 skiprows = 1 跳過列名 2、pandas 獲取指定的行列資料 df.ilo

python elasticsearch 分組統計

聚合(Aggregations): query = { "query": { "bool": { "must": [ {"term": {"c

24、python對資料框進行分組統計簡單操作

分組分析:是指根據分組欄位,將分析物件劃分成不同的部分,已進行對比分析各組之間的差異性的一種分析方法 常見的統計指標: 計數 求和 平均值 1 函式 01 分組統計函式: groupby(by=[分組列1,分組列2,...])[統計列1,統計列2,。。。] .agg({統計列名1:統計函

Pandas分組統計函式:groupby、pivot_table及crosstab

利用python的pandas庫進行資料分組分析十分便捷,其中應用最多的方法包括:groupby、pivot_table及crosstab,以下分別進行介紹。 0、樣例資料 df = DataFrame({'key1':['a','a','b','b','a

Pandas 分組統計

– Start import pandas as pd pd.set_option('display.max_columns', 100) pd.set_option('display.max_rows', 500) pd.set_option('displa

最小二乘迴歸樹Python實現——統計學習方法第五章課後題

李航博士《統計學習方法》第五章第二題,試用平方誤差準則生成一個二叉迴歸樹。 輸入資料為: x     0            1          2         3      

pandas學習(常用數學統計方法總結、讀取或保存數據、缺省值和異常值處理)

導入 numpy shape 缺省 數量 導入數據 個數 就是 msu pandas學習(常用數學統計方法總結、讀取或保存數據、缺省值和異常值處理) 目錄 常用數學統計方法總結 讀取或保存數據 缺省值和異常值處理    常用數學統計方法總結 count

R統計筆記(三):分組統計的幾種方法

1. 使用tapply函式 # INDEX相當於groupBy tapply(salarys$SALARY, INDEX=salarys$SEX, FUN=sum) 如果出現引數的長度不一致的錯誤,如下: Error in tapply(sal

pandas 常用統計方法

統計方法 pandas 物件有一些統計方法。它們大部分都屬於約簡和彙總統計,用於從 Series 中提取單個值,或從 DataFrame 的行或列中提取一個 Series。 比如 DataFrame.mean(axis=0,skipna=True) 方法,當資料集中存

pandas練習題:統計某列某類資料總數及對應其他列的資料的另類方法

假設有這個表格,要求統計合同類的總數和對應的總金額。一般我們會使用正則來篩選出來,那有別的方法嗎?我們可以使用str.contains來檢查是否含有“合同”:       名稱    金額    年份0    購房合同   100  20181    施工合同  1000  

MySql按周/月/日分組統計資料的方法

今天 select * from 表名 where to_days(時間欄位名) = to_days(now()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS( NOW( ) ) – TO_DAYS( 時間欄位名) <= 1 7天 SELECT * FROM 表名

bug統計分析續(一)基於SQL的Bug統計方法

擴展 span tom div info 依據 desc pos title 本文由 @lonelyrains 出品。轉載請註明出處。 文章鏈接: http://blog.csdn.net/lonelyrains/article/details/44225533

Python隨機數生成方法

color randint cde int syn amp 應用 comm 字符串 假設你對在Python生成隨機數與random模塊中最經常使用的幾個函數的關系與不懂之處。以下的文章就是對Python生成隨機數與random模塊中最經常使用的幾個函數的關系,希望你會有

python序列的方法

更改 第一次 ase 次數 str 如果 center 小寫 pil 1.基本的序列(sequenece),包括定指表(tuple)和表(list),字符串也是一種特殊的定指表。(表的元素可以更改,定值表一旦建立,其元素就不可以更改) #s為一個序列 len(s) 返回序列

pandas中pd.read_excel()方法中的converters參數

exc 對象 實現 編碼 類型 div spa 方法 情況 最近用pandas的pd.read_excel()方法讀取excel文件時,遇到某一列的數據前面包含0(如010101)的時候,pd.read_excel()方法返回的DataFrame會將這一列視為int類型,即

selenium+python定位元素方法

一個 網頁 cat sel href locate targe lan python 定位元素方法 官網地址:http://selenium-python.readthedocs.org/locating-elements.html 這裏有各種

SQL腳本去重分組統計

數據 values name var logs 記錄 寫入 varchar 分享 需求:首先有一張表記錄學生姓名、科目和成績,然後模擬插入幾條數據,腳本如下: create table score ( Name nvarchar(20),--姓名

Python SqlAlchemy使用方法

ont 刪除表 ini 刪除 for erl 創建 elf tca Python SqlAlchemy使用方法 2.初始化連接: from sqlalchemy.ext.declarative import declarative_base from sqlal