0
我有這樣一個數據幀:如何在每一天所看到(第一天,第二天,等)在大熊貓順序總結值
id Date Volume Price Values(Volume*Price)
56033738624803469 20170111 1 943339 943339
56033738624803469 20170111 10 919410 9194100
56033738624803469 20170112 1 919410 919410
56033738624803469 20170112 5 954999 4774955
4659957480182399 20170207 1 1000000 1000000
4659957480182399 20170208 5 1000000 5000000
4659957480182399 20170208 40 1000000 40000000
我要計算並繪製爲以下計算第一個100天,每個ID:每天
- 計算平均值在100天
- 該地塊所有IDS的
- 之後,劇情應該是這樣的:
(https://i.stack.imgur.com/2cozR.png)
這是我迄今所做的:
df2 = df.groupby(['Id', 'Date']).sum()
結果是:
Index Volume Price Values
Id Date
1745829084228393 20170207 1 1000 1000000.0 1.000000e+09
20170208 5151 999000 101000000.0 9.990000e+11
20170403 1 12 1000100.0 1.200120e+07
20170408 1 12 1000000.0 1.200000e+07
20170417 1 500 1000000.0 5.000000e+08
20170423 3 14500 2000000.0 1.450000e+10
20170507 10 35000 4000000.0 3.500000e+10
20170510 21 49051 6000000.0 4.905100e+10
20170529 1 4 1000000.0 4.000000e+06
2888358730233310 20170212 820 2000000 40000000.0 2.000000e+12
2929948497881810 20170207 1830 1500000 60000000.0 1.500000e+12
20170208 903 700000 42000000.0 7.000000e+11
20170212 1176 800000 48000000.0 8.000000e+11
3715246194918044 20150509 66 1008 11000000.0 1.008000e+09
現在我要計算的平均每個ID的第一,第二,...的值,例如:
Date_Order avg_Sum_Values(= summation first date of each id /(number of ids))
first_Date 875.5 e+9
second_Date 849.5 e+9
感謝,但我有日期時間範圍超過一天,例如我有2010年之間的日期至2017.may是我的問題是不夠清楚。例如在您的數據我想計算'20170408'(= 2)的'價值'的總和爲'id'1並且將其與值爲20170408的id'2'(= 3)相加並且與值相加20170409(= 31)(考慮到我有很大的天數) – ary
這很好,只需要do是使用pd.to_datetime和pd.TimeDelta來讓你的類型正確,並且它會處理日期m爲你服務。我再次更新了我的答案,以演示如何正確使用這些類型。 – scnerd