我試圖創建的每票每人每天用戶總時間的堆積條形圖,我DataFrame
看起來是這樣的:Python的大熊貓重新取樣按天,按價值
date_timestamp ticket time user
23/03/2015 12:00:00 D-146 120 blgo
04/04/2015 12:00:00 D-173 15 blgo
29/04/2015 12:00:00 P-110 60 frle
29/04/2015 15:47:29 P-113 180 chki
29/04/2015 15:47:55 P-113 30 chki
30/04/2015 12:00:00 P-108 240 frle
30/04/2015 12:00:00 P-116 120 hahe
30/04/2015 13:46:25 P-116 240 hahe
01/05/2015 09:20:48 P-113 120 frle
01/05/2015 09:39:13 P-107 45 frle
圖表上每個欄將在一天內代表一個用戶 - 酒吧的高度將表示當天花在幾分鐘內的總時間,並且將按用戶當天登錄每張門票的時間量按比例分配。
我知道我可以用得到的總時間每天每用戶執行以下操作:
df[(df.user == 'blgo')]['time'].resample('B',how='sum').fillna(0)
我也知道,我可以把這些數據幀由門票,像這樣:
df2=df['time'].groupby(df['ticket'])
據推測,爲了實現我的目標,我需要爲每個用戶提供一個數據框,其中索引爲天,門票爲列,每個單元格爲當天在該故障單上記錄的總時間。
任何幫助或建議,將不勝感激。
你想要的時間花在_fraction_在給定的票在某一天每個用戶代表,或_TIME_? (例如,在你的例子中,用戶'frle'不知何故設法在2015年4月30日花了54小時在P-108上,而用戶'hahe'在那天花了6個小時在P-116上;如果這兩者都表示爲「100 %用戶的時間「或縮小到絕對小時數?) –
我希望*時間* - 在某些情況下,可能導致每天總計超過24小時,但這沒關係。不過,我會修改表格,因爲這可能會讓某些人感到困惑,謝謝指出。 – Charon