{"id":22563913,"url":"https://github.com/datalopes1/fooddelivery_desafio","last_synced_at":"2025-10-24T13:05:03.944Z","repository":{"id":231401974,"uuid":"781686441","full_name":"datalopes1/foodDelivery_desafio","owner":"datalopes1","description":"Este projeto é resultado de um desafio do grupo de assinaturas Universidade dos Dados, feito a partir do dataset Delivery Center: Food \u0026 Goods orders in Brazil disponível no Kaggle e enviado por Nosbielcs.","archived":false,"fork":false,"pushed_at":"2024-04-03T22:16:14.000Z","size":38934,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-17T11:49:22.674Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/datalopes1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-04-03T21:07:08.000Z","updated_at":"2024-04-03T21:09:17.000Z","dependencies_parsed_at":"2024-04-03T23:36:48.098Z","dependency_job_id":null,"html_url":"https://github.com/datalopes1/foodDelivery_desafio","commit_stats":null,"previous_names":["datalopes1/fooddelivery_desafio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/datalopes1/foodDelivery_desafio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalopes1%2FfoodDelivery_desafio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalopes1%2FfoodDelivery_desafio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalopes1%2FfoodDelivery_desafio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalopes1%2FfoodDelivery_desafio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/datalopes1","download_url":"https://codeload.github.com/datalopes1/foodDelivery_desafio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalopes1%2FfoodDelivery_desafio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280799423,"owners_count":26393089,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-24T02:00:06.418Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-07T23:13:29.711Z","updated_at":"2025-10-24T13:05:03.924Z","avatar_url":"https://github.com/datalopes1.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\r\n# 🛵 Desafio Delivery Center: Food \u0026 Goods\r\n\r\nEste projeto é resultado de um desafio do grupo de assinaturas Universidade dos Dados, feito a partir do dataset Delivery Center: Food \u0026 Goods orders in Brazil disponível no [Kaggle](https://www.kaggle.com/datasets/nosbielcs/brazilian-delivery-center) e enviado por [Nosbielcs](https://www.kaggle.com/nosbielcs).\r\n\r\n![Imagem](https://images.unsplash.com/photo-1526367790999-0150786686a2?q=80\u0026w=2071\u0026auto=format\u0026fit=crop\u0026ixlib=rb-4.0.3\u0026ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D)\r\n\r\n### 🛠️ Ferramentas utilizadas\r\n![Python](https://img.shields.io/badge/python-3670A0?style=for-the-badge\u0026logo=python\u0026logoColor=ffdd54) ![Jupyter Notebook](https://img.shields.io/badge/jupyter-%23FA0F00.svg?style=for-the-badge\u0026logo=jupyter\u0026logoColor=white)\r\n\r\n## 1.1. O desafio\r\n\r\nTrabalhamos em uma startup de delivery, em um time de dados centralizado que atende diversas áreas e recebemos algumas demandas:\r\n\r\n- Numa ação de marketing, para atrair mais entregadores, vamos dar uma bonificação para os 20 entregadores que possuem maior distância percorrida ao todo. A bonificação vai variar de acordo com o tipo de profissional que ele é e o modelo que ele usa para se locomover (moto, bike, etc). Levante essas informações.\r\n- Além disso, o time de Pricing precisa ajustar os valores pagos aos entregadores. Para isso, eles precisam da distribuição da distância média percorrida pelos motoqueiros separada por estado, já que cada região terá seu preço.\r\n- Por fim, o CFO precisa de alguns indicadores de receita para apresentar para a diretoria executiva. Dentre esses indicadores, vocês precisarão levantar (1) a receita média e total separada por tipo (Food x Good), (2) A receita média e total por estado. Ou seja, são 4 tabelas ao todo.\r\n- Se a empresa tem um gasto fixo de 5 reais por entrega, recebe 15% do valor de cada entrega como receita e, do total do lucro, distribui 20% em forma de bônus para os 2 mil funcionários, quanto cada um irá receber no período contido no dataset?\r\n\r\n## 1.2. Importação das bibliotecas e carregamento dos dados\r\nA bibliotecas utilizadas foram o pandas, numpy, datetime, os, matplotlib, seaborn e warnings.\r\n\r\n# 🧱2. Estrutura, limpeza e manipulação dos dados \r\n![est](https://i.imgur.com/A8JD3RG.png)\r\n##  2.1. Deliveries\r\nNo dataset deliveries identifiquei os outliers em \"delivery_distance_meters\".\r\n\r\n![bp1](https://i.imgur.com/Xk0eXuo.png)\r\n\r\nE então removi estes dados, este é o resultado após a limpeza. \r\n\r\n![bp2](https://i.imgur.com/tSXj3Tt.png)\r\n\r\nApós isso mantive somente as entregas com status de \"DELIVERED\".\r\n\r\n## 2.2. Drivers\r\nAqui foram mantidas apenas as colunas \"driver_id\" e \"driver_modal\".\r\n\r\n## 2.3. Hubs\r\nAqui foram mantidas apenas as colunas \"hub_id\" e \"hub_state\".\r\n\r\n## 2.4. Orders \r\nEm orders primeiro foram selcionadas somente as colunas que seriam utilizadas.\r\n![orders](https://i.imgur.com/80l4krT.png)\r\n\r\nE então foi criada uma coluna única para data do pedido, nomeada \"order_date\".\r\n![date](https://i.imgur.com/1azh0wd.png)\r\n\r\nE por fim foram mantidas somente as entregas com status \"FINISHED\"\r\n\r\n## 2.5. Payments\r\nNeste dataset também foram identificados outliers, em \"payment_amount\" e \"payment_fee\".\r\n\r\n![bp3](https://i.imgur.com/E3dTOFK.png)\r\n\r\n![bp4](https://i.imgur.com/5qvtHVH.png)\r\n\r\nE então segui para o processo de remoção dos outliers. E este foi o resultado. \r\n\r\n![bp5](https://i.imgur.com/qRKTgJn.png)\r\n\r\n![bp6](https://i.imgur.com/m9i1nHt.png)\r\n\r\n## 2.6. Stores\r\nAqui foram mantidas apenas as colunas \"store_id\", \"hub_id\" e \"store_segment\".\r\n\r\n## 2.7. Criando um dataset unificado \r\n### Os critérios e ajustes para unir orders, deliveries e payments\r\nO caminho que segui foi o seguinte: cada **pedido (order)**, segue para **entrega (deliveries_clean)** e ao final recebe um **pagamento (payments_clean)**.\r\n\r\nMas antes dos JOINS foi criada a coluna \"order_revenue\" que define a receita em cada entrega. \r\n\r\n![revenue](https://i.imgur.com/lLsZCIo.png)\r\n\r\nApós este processo foram feitos os JOINS e a criação do dataset que será base para responders todas as demandas.\r\n\r\n# ✔ 3. Respondendo as demandas\r\n## 3.1. Ranking dos entregadores\r\nAqui a partir do método groupby foram feitos os rankings para \"MOTOBOY\" e \"BIKER\".\r\n\r\n![motoboy](https://i.imgur.com/3yCHGvN.png)\r\n\r\n![bike](https://i.imgur.com/sRoI6n7.png)\r\n\r\n## 3.2. Média de metros percorridas por entrega em cada estado\r\nTambém através do método groupby foi feita a tabela das médias de distância percorrida.\r\n\r\n![mean](https://i.imgur.com/gTJL0ps.png)\r\n\r\n## 3.3. Receitas médias e totais por segmento e estados\r\nOutra vez através do groupby foi possível obter os resultados. \r\n### Receitas médias e totais por segmento\r\n![receita](https://i.imgur.com/cSjJfNb.png)\r\n\r\n![receita2](https://i.imgur.com/mclMYla.png)\r\n### Receitas médias e totais por estado\r\n\r\n![estado](https://i.imgur.com/y7VQCaZ.png)\r\n\r\n![estado2](https://i.imgur.com/YQYRvZB.png)\r\n\r\n## 3.4. Bônus para os funcionários\r\nE ao fim, o bônus para cada funcionário foi de R$ 233,90.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatalopes1%2Ffooddelivery_desafio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatalopes1%2Ffooddelivery_desafio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatalopes1%2Ffooddelivery_desafio/lists"}