激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - 一文搞懂Python中pandas透視表pivot_table功能

一文搞懂Python中pandas透視表pivot_table功能

2022-03-07 00:22The-Chosen-One Python

透視表是一種可以對數據動態排布并且分類匯總的表格格式。或許大多數人都在Excel使用過數據透視表,也體會到它的強大功能,而在pandas中它被稱作pivot_table,今天通過本文給大家介紹Python中pandas透視表pivot_table功能,感興趣的朋

一文看懂pandas的透視表pivot_table

一、概述

1.1 什么是透視表?

透視表是一種可以對數據動態排布并且分類匯總的表格格式。或許大多數人都在Excel使用過數據透視表,也體會到它的強大功能,而在pandas中它被稱作pivot_table。

1.2 為什么要使用pivot_table?

  • 靈活性高,可以隨意定制你的分析計算要求
  • 脈絡清晰易于理解數據
  • 操作性強,報表神器

 

二、如何使用pivot_table

首先讀取數據,數據集是火箭隊當家球星James Harden某一賽季比賽數據作為數據集進行講解。數據地址。

先看一下官方文檔中pivot_table的函數體:pandas.pivot_table - pandas 0.21.0 documentation

pivot_table(data,values=None,index=None,columns=None,aggfunc='mean',fill_value=None,margins=False,dropna=True,margins_name='All')

pivot_table有四個最重要的參數index、values、columns、aggfunc,本文以這四個參數為中心講解pivot操作是如何進行。

2.1 讀取數據

  •  import pandas as pd
  •  import numpy as np
  •  df = pd.read_csv('h:/James_Harden.csv',encoding='utf8')
  •  df.tail()

數據格式如下:

一文搞懂Python中pandas透視表pivot_table功能

2.2Index

每個pivot_table必須擁有一個index,如果想查看哈登對陣每個隊伍的得分,首先我們將對手設置為index

pd.pivot_table(df,index=[u'對手'])

一文搞懂Python中pandas透視表pivot_table功能

對手成為了第一層索引,還想看看對陣同一對手在不同主客場下的數據,試著將對手與勝負與主客場都設置為index,其實就變成為了兩層索引

pd.pivot_table(df,index=[u'對手',u'主客場'])

一文搞懂Python中pandas透視表pivot_table功能

試著交換下它們的順序,數據結果一樣:

pd.pivot_table(df,index=[u'主客場',u'對手'])

一文搞懂Python中pandas透視表pivot_table功能

看完上面幾個操作,Index就是層次字段,要通過透視表獲取什么信息就按照相應的順序設置字段,所以在進行pivot之前你也需要足夠了解你的數據。

2.3Values

通過上面的操作,我們獲取了james harden在對陣對手時的所有數據,而Values可以對需要的計算數據進行篩選,如果我們只需要james harden在主客場和不同勝負情況下的得分、籃板與助攻三項數據:

pd.pivot_table(df,index=[u'主客場',u'勝負'],values=[u'得分',u'助攻',u'籃板'])

一文搞懂Python中pandas透視表pivot_table功能

2.4Aggfunc

aggfunc參數可以設置我們對數據聚合時進行的函數操作。

當我們未設置aggfunc時,它默認aggfunc='mean'計算均值。我們還想要獲得james harden在主客場和不同勝負情況下的總得分、總籃板、總助攻時:

pd.pivot_table(df,index=[u'主客場',u'勝負'],values=[u'得分',u'助攻',u'籃板'],aggfunc=[np.sum,np.mean])

一文搞懂Python中pandas透視表pivot_table功能

2.5Columns

Columns類似Index可以設置列層次字段,它不是一個必要參數,作為一種分割數據的可選方式。

#fill_value填充空值,margins=True進行匯總pd.pivot_table(df,index=[u'主客場'],columns=[u'對手'],values=[u'得分'],aggfunc=[np.sum],fill_value=0,margins=1)

一文搞懂Python中pandas透視表pivot_table功能

現在我們已經把關鍵參數都介紹了一遍,下面是一個綜合的例子:

table=pd.pivot_table(df,index=[u'對手',u'勝負'],columns=[u'主客場'],values=[u'得分',u'助攻',u'籃板'],aggfunc=[np.mean],fill_value=0)

結果如下:

一文搞懂Python中pandas透視表pivot_table功能

aggfunc也可以使用dict類型,如果dict中的內容與values不匹配時,以dict中為準。

table=pd.pivot_table(df,index=[u'對手',u'勝負'],columns=[u'主客場'],values=[u'得分',u'助攻',u'籃板'],aggfunc={u'得分':np.mean,u'助攻':[min, max, np.mean]},fill_value=0)

結果就是助攻求min,max和mean,得分求mean,而籃板沒有顯示。

到此這篇關于一文搞懂Python中pandas透視表pivot_table功能詳解的文章就介紹到這了,更多相關pandas透視表pivot_table內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://www.cnblogs.com/Yanjy-OnlyOne/p/11195621.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲无av | 免费a级毛片大学生免费观看 | 亚洲一区二区三区高清视频 | 久久精品国产亚洲7777小说 | 久久免费视频精品 | 日韩毛片网站 | 男女污视频在线观看 | 国产手机国产手机在线 | 99精彩视频在线观看 | 国产羞羞视频免费在线观看 | 热@国产 | 国产午夜精品久久久久久久蜜臀 | 国产一级淫 | 久久久久久久一区二区 | 欧美激情在线播放 | 黄色网址电影 | 毛片大全免费看 | 国产一区二区三区在线免费 | 成人不卡一区二区 | 欧美日本一区二区 | 久久线视频| 九一国产精品 | 成人在线观看一区二区 | 欧美精品一级 | 99热1| 久久亚洲美女视频 | 日韩精品一二区 | 激情综合网俺也去 | 精品国产乱码一区二区三区四区 | 久久91亚洲人成电影网站 | a黄色片 | 宅男噜噜噜66国产在线观看 | 一级毛片特黄 | 国产成人精品免高潮在线观看 | 国产一级二级视频 | 久久狠狠高潮亚洲精品 | 黄色av电影在线 | 日韩毛片毛片久久精品 | 免费a视频| 国外成人在线视频 | 亚洲片在线 |