🚀 A manual implementation of Holt-Winters Exponential Smoothing (Multiplicative Model) to forecast shampoo sales data, built from scratch based on academic research papers.
This project applies the Holt-Winters Exponential Smoothing method to predict monthly shampoo sales using a custom-built model.
Rather than using existing machine learning libraries, the model is built manually from scratch, based on mathematical formulas and concepts detailed in academic research papers on time series forecasting.
- Source: Provided in
shampoo_sales.csv - Features:
Month: Month identifier (e.g., "1-01", "1-02")Sales: Monthly sales volume
Example:
| Month | Sales |
|---|---|
| 1-01 | 266.0 |
| 1-02 | 145.9 |
- Manual computation of:
- Level component (
l0) - Trend component (
t0) - Seasonality component
- Level component (
- Application of Holt-Winters Exponential Smoothing (Multiplicative Seasonality) model manually.
- Data visualization using Matplotlib.
- Python 3
- Pandas
- Numpy
- Matplotlib
✅ Manual coding of Holt-Winters model without using prebuilt machine learning libraries.
✅ Translation of theoretical concepts and mathematical formulas into working Python code.
✅ Hands-on experience in reading, understanding, and applying academic research.
- Visual representation of real sales data vs predicted values.
- Effective capture of trend and seasonality over time.
- Clone this repository:
git clone https://github.com/your-username/holt-winters-shampoo-sales.git cd holt-winters-shampoo-sales - Install the required libraries:
pip install pandas numpy matplotlib
- Run the script:
python holt-winter_exponential_smoothing_multiplicative.py
- How to translate mathematical models into actual code.
- Deep understanding of smoothing methods for time series data.
- Importance of trend and seasonality in forecasting.
This project is licensed under the MIT License.
- Academic papers and research materials on Holt-Winters Exponential Smoothing methodology.
If you are interested in understanding time series forecasting deeply, implementing models manually without relying on prebuilt libraries is a highly recommended learning path.
