Python Pivot table透視表使用方法解析
Pivot 及 Pivot_table函數(shù)用法
Pivot和Pivot_table函數(shù)都是對數(shù)據(jù)做透視表而使用的。其中的區(qū)別在于Pivot_table可以支持重復元素的聚合操作,而Pivot函數(shù)只能對不重復的元素進行聚合操作。
在一般的日常業(yè)務中,因為Pivot_table的功能更為強大,Pivot能做的不能做的Pivot_table都可做。所以只需要記住Pivot_table函數(shù)用法就好了。
Pivot函數(shù)的使用演示
#%%
import pandas as pd
df01 = pd.DataFrame(
{
"年份":[2019,2019,2019,2020,2020,2020],
"平臺":["京東","淘寶","拼多多","京東","淘寶","拼多多"],
"銷量":[100,200,300,400,500,600]
}
)
df01
#%%
pd.pivot(df01,
index = "年份",
columns = "平臺",
values = "銷量")
#%%
聚合后結(jié)果

Pivot_table函數(shù)的使用演示
注釋:index指定什么元素作為index顯示,columns指定列,values指定統(tǒng)計的值。一般values都為int后者float類型的值。aggfunc為聚合函數(shù)可以指定(mean,sum,Min,Max等統(tǒng)計運算等函數(shù),如果不指定默認為mean均值)
df02 = pd.DataFrame(
{
"年份":[2019,2019,2019,2019,2020,2020,2020,2020],
"平臺":["京東","淘寶","淘寶","拼多多","京東","淘寶","拼多多","拼多多"],
"銷量":[100,200,300,400,500,600,700,800]
}
)
df02
#%%
#pivot_table用的很多.因為可以對重復的元素進行聚合操作.而pivot函數(shù)只能對不重復的行進行運算
pd.pivot_table(df02,
index="年份",
columns="平臺",
values="銷量",
aggfunc=sum #聚合函數(shù)來對銷量進行運算.可以指定最大,最小,平均值等函數(shù).默認為mean平均值
)
#%%
聚合結(jié)果

對比結(jié)果:這里要強調(diào)一點的是,2020年平臺為拼多多的數(shù)據(jù)出現(xiàn)了2次,而且2次的值不同。在pivot函數(shù)中是無法對這種重復平臺的數(shù)據(jù)進行聚合的,但是Pivot_table則可以。
另外通過聚合函數(shù)aggfunc指定sum求和,可以把2次的值累加統(tǒng)計。
Pivot_table函數(shù)真實案例演示
1. 讀取表格數(shù)據(jù)
#%%
df = pd.read_excel("./datas/result_datas.xlsx",
).convert_dtypes() #讀取數(shù)據(jù)并自動轉(zhuǎn)化type
df.dtypes
#%%
df.head(3)
#%%

2. 通過Pivot_table函數(shù)透視合并數(shù)據(jù)并對金額和數(shù)量做統(tǒng)計
因為涉及到敏感信息,因此服務卡卡號等敏感信息部分遮掩不顯示。但是通過部分結(jié)果也可以看出是按照號碼進行升序排序的
#按照自定義指定index,columns,values值
result = pd.pivot_table(df,
index = ["姓名","服務卡卡號","明細","規(guī)格"],
values = ["理賠金額(元)","數(shù)量"],
aggfunc=sum
)
result = result.sort_values("服務卡卡號") #按照指定values值排序
result
#%%
#輸出到文件
result.to_excel("./datas/output_datas.xlsx")
print("Done!!!")

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python實現(xiàn)從pdf文件中提取文本,并自動翻譯的方法
今天小編就為大家分享一篇python實現(xiàn)從pdf文件中提取文本,并自動翻譯的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11
使用fdopen實現(xiàn)對Python進程產(chǎn)生的文件進行權(quán)限最小化配置
用python進行文件的創(chuàng)建和讀寫操作時,我們很少關(guān)注所創(chuàng)建的文件的權(quán)限配置。本文就來聊聊如何使用fdopen實現(xiàn)對Python進程產(chǎn)生的文件進行權(quán)限最小化配置吧2023-03-03
利用python實現(xiàn)平穩(wěn)時間序列的建模方式
這篇文章主要介紹了利用python實現(xiàn)平穩(wěn)時間序列的建模方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python3.9 beta2版本發(fā)布了,看看這7個新的PEP都是什么
這篇文章主要介紹了Python3.9 beta2版本發(fā)布了,看看這7個新的PEP都是什么,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2020-06-06
python循環(huán)之彩色圓環(huán)實現(xiàn)示例
這篇文章主要為大家介紹了python循環(huán)之彩色圓環(huán)實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-06-06
對python使用telnet實現(xiàn)弱密碼登錄的方法詳解
今天小編就為大家分享一篇對python使用telnet實現(xiàn)弱密碼登錄的方法詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01

