DoorDash: Diagnose delivery failures via cancellation patterns and geospatial hex clustering. Python, Pandas, Folium, H3.
DoorDash is a local commerce platform focused on on-demand delivery. They have an application where clients can order deliveries, and drivers can accept them (offers). At the moment, when the client clicks the Order button in the application, the matching system searches for the most relevant drivers and offers them the order. In this task, we would like to investigate some matching metrics for orders that did not completed successfully, i.e., the customer didn't end up getting their order.
Please complete the following tasks.
We have two data sets: data_orders and data_offers, both being stored in a CSV format. The data_orders data set contains the following columns:
order_datetime - time of the orderorigin_longitude - longitude of the orderorigin_latitude - latitude of the orderm_order_eta - time before order arrivalorder_gk - order numberorder_status_key - status, an enumeration consisting of the following mapping:
4 - cancelled by client,9 - cancelled by system, i.e., a rejectis_driver_assigned_key - whether a driver has been assignedcancellation_time_in_seconds - how many seconds passed before cancellationThe data_offers data set is a simple map with 2 columns:
order_gk - order number, associated with the same column from the orders data setoffer_id - ID of an offerMake sure that the solution reflects your entire thought process including the preparation of data - it is more important how the code is structured rather than just the final result or plot.