pandas dataframe.pivot()用法


OUTLINE

pivot()的用途可以簡單理解為:

將一個DataFrame的記錄數據整合成表格(類似Excel中的數據透視表功能),而且是按照pivot(‘index=xx’,’columns=xx’,’values=xx’)來整合的。

還有另外一種寫法,但是官方貌似並沒有給出來,就是pivot(‘索引列’,‘列名’,‘值’)。

數據變化圖示:

 官方文檔:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.pivot_table.html

 (在數據分析的時候要記得將pivot結果reset_index())

函數說明

DataFrame.pivot(index=None, columns=None, values=None)

功能:重塑數據(產生一個“pivot”表格)以列值為標准。使用來自索引/列的唯一的值(去除重復值)為軸形成dataframe結果。

   為了精細調節控制,可以看和stack/unstack方法有關的分層索引文件。

   在數據分析的時候要記得將pivot結果reset_index()。

參數:index : string or object, optional

    用於創建新框架索引的列名稱。 如果沒有,則使用現有的索引。

   columns : string or object

    用於創建新框架列的列名稱

   values : string or object, optional

    用於填充新框架值的列名稱。 如果未指定,則將使用所有剩余列,結果將具有分層索引列

返回:DataFrame

使用示例

下圖是進行數據重塑之前的數據集,數據集包含三個字段的內容,分別是:name, year, gdp

 采用pivot函數對數據集進行重塑

#對數據進行重塑
df = df.pivot(index='name',columns='year',values='gdp')
df = df.reset_index()
df.fillna(1.0,inplace=True)
df

df = df.pivot(index='name',columns='year',values='gdp')的功能

            新數據集索引列 = 原數據集'name'列中的值

            新數據集列名 = 原數據集‘year’列中的值

            新數據集數據 = 原數據集'gdp'列中的值

轉換關系圖示:

 

 

 

文章出處:https://blog.csdn.net/cxd3341/article/details/105016903

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM