Proyek analisis data komprehensif untuk kategori FMCG Personal Care dengan pendekatan end-to-end dari data profiling hingga modeling dan evaluasi. Analisis ini mencakup:
- Data Profiling & Cleaning - Analisis kualitas data dan pembersihan menyeluruh
- Feature Engineering - Pembuatan fitur bisnis FMCG-specific yang relevan
- Exploratory Data Analysis - Eksplorasi data dengan visualisasi komprehensif
- Modeling & Evaluation - Pembangunan model prediksi dengan uji asumsi statistik
- Bias & Validity Analysis - Identifikasi bias dan validitas data
- Business Insights - Insight bisnis yang actionable
- Mengidentifikasi produk dengan potensi pertumbuhan tinggi atau inovasi yang menarik minat konsumen
- Analisis growth outlier dan rising stars
- Analisis sentimen konsumen dan emerging keywords
- Identifikasi white space opportunities
- Analisis tren penjualan per kategori, brand, dan channel
- Analisis tren harga dan diskon
- Identifikasi pola musiman (seasonal patterns)
- Visualisasi tren dengan interactive charts
- Memprediksi tren penjualan 6-12 bulan ke depan
- Modeling pergeseran preferensi konsumen
- Analisis time series dengan SARIMA, Prophet, dan Ensemble methods
- Evaluasi apakah peluncuran produk baru mengurangi penjualan produk lain
- Source of Volume (SOV) analysis
- Net portfolio impact calculation
Gelar-Rasa/
βββ DSC2025_Analysis_FMCG_PersonalCare.ipynb # Main analysis notebook
βββ Gelar_Rasa/
β βββ data/
β βββ fmcg_personalcare/
β βββ fmcg_personalcare/
β βββ sales.csv
β βββ products.csv
β βββ marketing.csv
β βββ reviews.csv
β βββ README_FMCG_Personal_Care.txt
βββ data/
β βββ clean/ # Cleaned & engineered datasets
βββ reports/
β βββ profiling/ # Data profiling reports
β βββ eda/ # EDA visualizations
β βββ insights.md # Business insights
β βββ bias_analysis.csv # Bias analysis results
β βββ cleaning_log.csv # Data cleaning log
βββ archive/
β βββ unneeded/ # Archived files
βββ src/ # Source code modules (optional)
βββ requirements.txt # Python dependencies
βββ README.md # This file
- Python 3.8 or higher
- pip package manager
- Clone or navigate to the project directory:
cd Gelar-Rasa- Create a virtual environment (recommended):
python -m venv env
source env/bin/activate # On Windows: env\Scripts\activate- Install dependencies:
pip install -r requirements.txtEnsure your data files are located at:
Gelar_Rasa/data/fmcg_personalcare/fmcg_personalcare/
βββ sales.csv
βββ products.csv
βββ marketing.csv
βββ reviews.csv
- Buka notebook
DSC2025_Analysis_FMCG_PersonalCare.ipynb - Jalankan semua cells secara berurutan
- Hasil analisis akan tersimpan di:
reports/profiling/- Data profiling reportsreports/eda/- Visualisasi EDAreports/insights.md- Insight bisnisdata/clean/- Dataset yang sudah dibersihkan
- β Load dan analisis semua dataset (sales, products, marketing, reviews)
- β Profiling komprehensif: missing values, distribusi, tipe data
- β Simpan hasil profiling ke CSV
- β Normalisasi nama kolom (snake_case)
- β Konversi kolom waktu ke datetime
- β Handling missing values (impute dengan median/mode/default)
- β Hapus duplikat
- β Deteksi outlier (IQR method)
- β Validasi data numerik (harga, quantity tidak negatif)
- β Fitur waktu: day_of_week, month, year, is_weekend, is_holiday
- β Fitur promosi: promo_flag, promo_depth, promo_intensity
- β Fitur harga: price_ratio_to_base, relative_price_to_avg, price_tier
- β Fitur historis: lag_qty (1, 7, 30 hari), rolling_mean (7, 30 hari)
- β Fitur kategori: sku_category, store_type, pack_size
- β Elastisitas harga: correlation log(qty) vs log(price)
- β Visualisasi tren penjualan (total & per kategori)
- β Distribusi harga, quantity, dan promo lift
- β Korelasi antar fitur (heatmap)
- β Analisis musiman
- β Top performer: toko & SKU
- β SKU dengan promo paling efektif
- β Baseline models: Linear Regression, Ridge, Lasso, Random Forest, Gradient Boosting
- β Metrik evaluasi: MAE, RMSE, MAPE, RΒ²
- β
Uji asumsi model:
- Normalitas residual (Shapiro-Wilk / Jarque-Bera)
- Homoskedastisitas (Breusch-Pagan)
- Autokorelasi (Durbin-Watson, Ljung-Box)
- Multikolinearitas (VIF)
- β Interpretasi feature importance
- β Evaluasi komprehensif dengan rekomendasi perbaikan
- β Deteksi bias waktu (distribusi per tahun/bulan)
- β Deteksi bias lokasi (distribusi per region)
- β Deteksi bias promo (distribusi dengan/tanpa promo)
- β Analisis confounding (promo vs musim)
- β Kuantifikasi tingkat bias
- β README dengan penjelasan proyek
- β Laporan insights bisnis (insights.md)
- β Struktur repository yang rapi
reports/profiling/profiling_*.csv- Data profiling untuk setiap datasetreports/eda/*.png- Visualisasi EDA (12+ grafik)reports/insights.md- Insight bisnis komprehensifreports/bias_analysis.csv- Hasil analisis biasreports/cleaning_log.csv- Log proses data cleaning
data/clean/sales_with_features.csv- Dataset yang sudah dibersihkan dan di-feature engineering
- Tren penjualan total
- Tren penjualan per kategori
- Distribusi harga, quantity, discount, promo lift
- Korelasi heatmap
- Analisis musiman
- Top performer (toko & SKU)
- Promo effectiveness
- Residual normality
- Residual homoskedasticity
- Feature importance (Linear Regression)
- Feature importance (Random Forest)
- Predicted vs Actual
- Buka Jupyter Notebook:
jupyter notebook DSC2025_Analysis_FMCG_PersonalCare.ipynb- Atau menggunakan JupyterLab:
jupyter lab DSC2025_Analysis_FMCG_PersonalCare.ipynb- Jalankan semua cells secara berurutan (Cell β Run All)
- Random Seed: 42 (untuk reproducibility)
- Package Versions: Dicatat di awal notebook
- Semua output disimpan dengan timestamp untuk tracking
Notebook dibagi menjadi 9 bagian utama:
- Setup Environment & Reproducibility
- Analisis Struktur Repository
- Data Ingestion & Profiling
- Data Cleaning
- Feature Engineering
- Exploratory Data Analysis
- Modeling & Evaluasi
- Analisis Bias & Validitas Data
- Ringkasan & Insight Bisnis
- Modular Architecture: Each phase is independently executable
- Comprehensive Analysis: Covers all aspects from data integration to strategic insights
- Statistical Rigor: Uses advanced statistical methods (DiD, time series, clustering)
- Visualization: Interactive dashboards using Plotly
- Reproducibility: Clear documentation and structured code
- Missing value analysis dan imputation (median/mode/default)
- Outlier detection menggunakan IQR method (1.5 Γ IQR)
- Normalisasi nama kolom ke snake_case
- Validasi data numerik (harga, quantity tidak negatif)
- 30+ fitur yang dibuat mencakup:
- Fitur waktu (8 fitur)
- Fitur promosi (5 fitur)
- Fitur harga (4 fitur)
- Fitur historis (8 fitur)
- Fitur kategori (5 fitur)
- Elastisitas harga (1 fitur)
- Multiple baseline models: Linear, Ridge, Lasso, Random Forest, Gradient Boosting
- Time-based train-test split (80-20)
- StandardScaler untuk normalisasi fitur
- Evaluasi dengan MAE, RMSE, MAPE, RΒ²
- Uji Asumsi Model:
- Normalitas residual (Shapiro-Wilk / Jarque-Bera)
- Homoskedastisitas (Breusch-Pagan)
- Autokorelasi (Durbin-Watson, Ljung-Box)
- Multikolinearitas (VIF)
- Bias Detection:
- Chi-square test untuk confounding
- Distribusi persentase untuk bias waktu/lokasi/promo
- Python 3.8+
- pandas - Data manipulation
- numpy - Numerical computing
- scikit-learn - Machine learning
- statsmodels - Statistical modeling
- prophet - Time series forecasting
- plotly - Interactive visualizations
- scipy - Scientific computing
- Data Quality Report: Validation results, missing values, outliers
- Market Snapshot: Overall market metrics, market share, growth rates
- Product Portfolio Analysis: Detailed metrics per product/SKU
- Innovation Radar Report: Growth outliers, rising stars, emerging keywords
- Forecast Report: Sales forecasts with confidence intervals
- Cannibalization Report: SOV analysis, net portfolio impact
Lihat file reports/insights.md untuk insight bisnis lengkap.
- Dataset mencakup 1M+ transaksi dari 15 SKU
- Periode analisis: 2020-2025
- Total revenue dalam triliunan IDR
- Promo menunjukkan lift signifikan pada penjualan
- Channel e-commerce mendominasi penjualan
- Promo efektif namun perlu optimasi timing
- Elastisitas harga bervariasi antar SKU
- Pola musiman terdeteksi untuk perencanaan inventory
- Fokus investasi marketing pada channel e-commerce dengan ROI tertinggi
- Optimasi strategi promo berdasarkan analisis musiman
- Implementasi dynamic pricing untuk SKU dengan elastisitas tinggi
- Pengembangan model forecasting untuk perencanaan inventory
- Monitoring dan mitigasi bias data untuk analisis yang lebih representatif
- Each module contains detailed docstrings
- Method documentation explains parameters and returns
- Code comments explain complex logic
This is a competition project for Gelar Rasa 2025. For questions or issues, please refer to the project documentation.
This project is for educational and competition purposes.
- Analyst: Gemini (Pakar Bisnis & Data)
- Requester: User (Pimpinan)
- Project: Data Science Competition Gelar Rasa 2025
November 2025
Prepared for: Data Science Competition Gelar Rasa 2025
Dataset: FMCG Personal Care - Synthetic Dataset
Analysis Period: 2020-2025