How many rides completed on average in a 4 hour span

Viewed 36

I have a dataset:

ride_completion_time    ride_id
0   2022-08-27 11:42:02 1
1   2022-08-24 05:59:26 2
2   2022-08-23 17:40:05 3
3   2022-08-28 23:06:01 4
4   2022-08-27 03:21:29 5

I would like to find out in a 4 hour time span, on average, how many rides are actually completed? I run df3.dtypes to get my data types.

output:

dropoff_datetime    datetime64[ns]
ride_id                     object
dtype: object

Then I've tried the following:

Option 1)

df3 = df3.groupby(df3.ride_completion_time.dt.floor('2H')).mean()

Result: Dataframe object has no attribute dropoff_date_time

Option 2)

df3.groupby(df3.index.floor('4H').time).sum()

Result: It gives me the right grouping (I see that it's changing my times to every 4 hours) but then it's not summing it really? I tried using average but average isn't supported I think.

Can someone point me in the right direction?

1 Answers

ride_id is object type (probably string) so sum and mean would exclude this column. You want to know number of rides, you can do size:

df3.groupby(df3.index.floor('4H').time).size()

As to why 2) works but not 1), probably somewhere you set ride_completion_time as index in your code.

Related