A data analysis project to optimize supplier performance in retail, inspired by Musgrave. Built with Python, SQL, and Power BI.
This project analyzes supplier performance and engagement for a retail scenario (simulating a supermarket like Musgrave), using the Online Retail dataset. The purpose is to evaluate key metrics such as delivery reliability, profitability, and return rates, providing actionable insights for business optimization.
- Dataset:
Online Retail.xlsx(541,909 rows) with columns:InvoiceNo,StockCode,Description,Quantity,InvoiceDate,UnitPrice,CustomerID, andCountry. - Location: Stored in the
notebooks/folder for initial exploration. - Source: Downloaded from the UCI Machine Learning Repository.
- Initial Assessment:
- Total rows: 541,909.
- Identified issues: 1,454 missing
Descriptionvalues (0.27%), 135,080 missingCustomerIDvalues (24.93%), 10,624 rows with negativeQuantity(1.96%) indicating returns, 2 rows with negativeUnitPrice(0.0004%) labeled "adjust bad debt", and 2,517 rows withUnitPrice= 0 (0.46%) often with non-zeroQuantity.
- Cleaning Decisions:
- Imputed missing
Descriptionwith "Unknown" to retain rows for item-level analysis. - Imputed missing
CustomerIDwith "Unknown" whereQuantityandUnitPricewere available, preserving financial and volume metrics. - Added
IsReturnflag for negativeQuantityrows to analyze returns separately. - Added
IsBadDebtflag for negativeUnitPricerows for financial impact analysis. - Added
IsZeroPriceflag forUnitPrice= 0 with non-zeroQuantityfor volume analysis.
- Imputed missing
- Outcome: The dataset is now organized in
notebooks/01_Data_Exploration_and_Cleaning.ipynb, ready for further analysis with cleaned and flagged data.
- Clone the repository:
git clone https://github.com/seu-usuario/Retail-Supplier-Performance-Analysis.git - Navigate to
notebooks/and open01_Data_Exploration_and_Cleaning.ipynbwith Jupyter Notebook or VS Code. - Ensure
Online Retail.xlsxis in thenotebooks/folder.
For questions, contact [https://www.linkedin.com/in/victor-garlet/].
Last Updated: August 20, 2025