I've this dataframe in pandas
key date story_point Story point
0 SOF-158 2019-06-04 09:51:01.143000+02:00 3.0 3.0
1 SOF-152 2019-05-24 09:10:23.483000+02:00 3.0 3.0
2 SOF-151 2019-05-24 09:10:14.978000+02:00 3.0 3.0
3 SOF-150 2019-05-24 09:10:23.346000+02:00 3.0 3.0
4 SOF-149 2019-05-24 09:10:23.024000+02:00 3.0 3.0
5 SOF-148 2019-05-24 09:10:23.190000+02:00 3.0 3.0
6 SOF-146 2019-05-24 09:10:22.840000+02:00 5.0 5.0
7 SOF-142 2019-04-15 10:50:03.946000+02:00 2.0 2.0
8 SOF-141 2019-03-29 10:54:08.677000+01:00 2.0 2.0
9 SOF-139 2019-04-15 10:44:56.033000+02:00 3.0 3.0
10 SOF-138 2019-04-15 10:48:53.874000+02:00 3.0 3.0
11 SOF-129 2019-03-28 11:56:17.221000+01:00 5.0 5.0
12 SOF-128 2019-03-29 11:34:47.552000+01:00 1.0 1.0
13 SOF-106 2019-03-25 10:15:43.231000+01:00 5.0 5.0
14 SOF-105 2019-03-25 10:15:43.252000+01:00 3.0 3.0
15 SOF-103 2019-03-29 11:55:45.984000+01:00 8.0 8.0
16 SOF-102 2019-03-25 10:15:43.210000+01:00 8.0 8.0
17 SOF-101 2019-03-25 10:15:43.179000+01:00 8.0 8.0
18 SOF-100 2019-03-29 12:08:16.525000+01:00 13.0 13.0
19 SOF-99 2019-03-19 12:48:58.168000+01:00 1.0 1.0
20 SOF-98 2019-03-19 12:47:28.172000+01:00 13.0 13.0
21 SOF-91 2019-03-08 11:53:19.456000+01:00 3.0 3.0
22 SOF-89 2019-04-05 09:32:39.517000+02:00 8.0 8.0
23 SOF-88 2019-03-25 10:15:42.927000+01:00 5.0 5.0
24 SOF-87 2019-04-05 09:32:25.519000+02:00 8.0 8.0
At certain point I need to groupby by week, so I used resample.
weekly_summary["story_point"] = df.story_point.resample('W').sum()
But I have this error, and I can't figure out why
Traceback (most recent call last):
File "main.py", line 98, in <module>
main()
File "main.py", line 44, in main
analyze_project(project)
File "main.py", line 70, in analyze_project
weekly_summary["story_point"] = df.story_point.resample('W').sum()
File "/Users/xxxx/anaconda/envs/xxx/lib/python3.6/site-packages/pandas/core/generic.py", line 8449, in resample
level=level,
File "/Users/xxx/anaconda/envs/xxx/lib/python3.6/site-packages/pandas/core/resample.py", line 1306, in resample
return tg._get_resampler(obj, kind=kind)
File "/Users/xxx/anaconda/envs/xxxx/lib/python3.6/site-packages/pandas/core/resample.py", line 1443, in _get_resampler
"but got an instance of %r" % type(ax).__name__
TypeError: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex, but got an instance of 'RangeIndex'
Convert column date
to datetimes and add parameter on
to resample
:
df['date'] = pd.to_datetime(df['date'])
weekly_summary = df.story_point.resample('W', on='date').sum()
If need new column:
weekly_summary['weekly'] = df.story_point.resample('W', on='date').transform('sum')
Or create DatetimeIndex
:
df['date'] = pd.to_datetime(df['date'])
df = df.set_index('date')
weekly_summary = df.story_point.resample('W').sum()
If need new column:
weekly_summary['weekly'] = df.story_point.resample('W').transform('sum')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With