簡體   English   中英

如何在Python數據透視表中使用時間戳記日期作為索引?

[英]How do I use timestamp dates as an index in a pivot table in python?

我最近開始使用python.pivot_table,並且遇到了在數據透視表中正確使用時間戳的挑戰。

我有一個大型數據框,其中包含如下數據

         Date          ID           Days  Quantity      Concern
0  2012-06-29         NaN            621       NaN            A
1  2012-06-29     1208985            874         1            A
2  2012-06-29         NaN            621         2            B
3  2012-06-29         NaN            874         1            C
4  2012-06-29         NaN            566       NaN            A
5  2012-06-29      251254            780       NaN            A
6  2012-06-29         NaN            566       NaN            C
7  2012-06-29      385379            566         1            B
8  2012-06-29      967911            780         1            B
9  2012-06-29         NaN            521       NaN            A
10 2012-06-29     1208985            834         1            C
11 2012-06-29      385379            374       NaN            A
12 2012-06-29      967909            780         1            B
13 2012-07-18         NaN            821       NaN            A
14 2012-07-18      251254            821       NaN            A
15 2012-08-04      756444            676         1            C
16 2012-08-04      756444            676         2            C
17 2012-08-04         NaN            676       NaN            A
18 2012-08-24         NaN            571       NaN            B
19 2012-08-24      251254            446         1            B

像下面這樣的行效果很好:

pd.pivot_table(data,index=['Concern'],columns=['ID'],values=['Quantity'],aggfunc='sum')

當前,當我使用Date列作為index=['Date']它按天分組。 我希望可以按月或年分組。 當date列是TimeStamp對象時,是否可以用數據透視表實現此目的?

您可以通過datetime系列具有的.dt屬性訪問諸如年和月之類的信息,因此您可以輕松地創建新列,例如:

df['Month'] = df['Date'].dt.month

然后使用這些列創建數據透視表:

pd.pivot_table(df, index=['Month'], columns=['ID'],
               values=['Quantity'],aggfunc='sum')

輸出:

Out[16]: 
      Quantity                                        
ID     251254  385379  756444  967909  967911  1208985
Month                                                 
6          NaN       1     NaN       1       1       2
7          NaN     NaN     NaN     NaN     NaN     NaN
8            1     NaN       3     NaN     NaN     NaN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM