python使用pandas創建透視表(Pivot tables)


代碼在最下面

思路:
1、准備號DataFrame數據集
2、根據需要將DataFrame轉換成透視表

  2.1、創建簡單的透視表(默認計算平均值)

    2.2、修改參數,滿足需求(求和,計算數量等)

本文參考鏈接參考:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.pivot_table.html?highlight=pivot_table#pandas.DataFrame.pivot_table

1、准備DataFrame

  通過代碼生成一個 24行,5列 的DataFrame,D和E是長度為24,具有標准正態分布的一維數組

   生成了一個24行5列的DataFrame,格式如下

 2、根據需要將DataFrame轉換成透視表

  2.1、創建一個簡單的透視表,格式為:A作為行,計算D列的平均值

  

       生成的透視表結果如下

     2.2、修改參數

    創建一個簡單的透視表,格式為:A,作為行,計算D列的總和

         生成的透視表結果如下

  

       具體代碼如下

import  pandas  as pd
import numpy as np
import datetime
#通過代碼生成一個 24行,5列 的DataFrame,D和E是長度為24,具有標准正態分布的一維數組
df = pd.DataFrame({'A': ['one', 'one', 'two', 'three'] * 6,
                   'B': ['A', 'B', 'C'] * 8,
                   'C': ['foo', 'foo', 'foo', 'bar', 'bar', 'bar'] * 4,
                   'D': np.random.randn(24),
                   'E': np.random.randn(24),
                   'F': [datetime.datetime(2013, i, 1) for i in range(1, 13)]
                    + [datetime.datetime(2013, i, 15) for i in range(1, 13)]})
#打印出數據格式
print(df)

#創建一個簡單的透視表,格式為:A,作為行,計算D列的平均值
df_pivotTable1= pd.pivot_table(df, values='D', index=['A'])

print(df_pivotTable1)

#創建一個簡單的透視表,格式為:A,作為行,計算D列的總和
df_pivotTable2= pd.pivot_table(df, values='D', index=['A'],aggfunc=np.sum)

print(df_pivotTable2)

 

 


免責聲明!

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



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