119 lines
3.3 KiB
Markdown
119 lines
3.3 KiB
Markdown
# Setup Checklist
|
|
|
|
Use this checklist to ensure your template is properly configured before running analyses.
|
|
|
|
## ✅ Initial Setup
|
|
|
|
- [ ] **Install dependencies**
|
|
```bash
|
|
pip install -r requirements.txt
|
|
```
|
|
|
|
- [ ] **Run setup wizard**
|
|
```bash
|
|
python setup_wizard.py
|
|
```
|
|
|
|
- [ ] **Place data file** in template directory (or update `DATA_DIR` in config.py)
|
|
|
|
## ✅ Configuration Verification
|
|
|
|
Open `config.py` and verify:
|
|
|
|
- [ ] **Company Information**
|
|
- [ ] `COMPANY_NAME` is set
|
|
- [ ] `ANALYSIS_DATE` is current
|
|
|
|
- [ ] **Data File**
|
|
- [ ] `DATA_FILE` matches your CSV filename
|
|
- [ ] File exists in expected location
|
|
|
|
- [ ] **Column Mappings**
|
|
- [ ] `REVENUE_COLUMN` matches your CSV
|
|
- [ ] `DATE_COLUMN` matches your CSV
|
|
- [ ] `CUSTOMER_COLUMN` matches your CSV (if applicable)
|
|
- [ ] `ITEM_COLUMN` matches your CSV (if applicable)
|
|
- [ ] `QUANTITY_COLUMN` matches your CSV (if applicable)
|
|
|
|
- [ ] **Date Configuration**
|
|
- [ ] `MIN_YEAR` is correct
|
|
- [ ] `MAX_DATE` is correct
|
|
- [ ] `ANALYSIS_YEARS` includes all years you want to analyze
|
|
|
|
- [ ] **LTM Configuration** (if needed)
|
|
- [ ] `LTM_ENABLED` is set correctly
|
|
- [ ] `LTM_START_MONTH`, `LTM_START_YEAR` are correct
|
|
- [ ] `LTM_END_MONTH`, `LTM_END_YEAR` are correct
|
|
|
|
- [ ] **Exclusion Filters** (if needed)
|
|
- [ ] `EXCLUSION_FILTERS['enabled']` is set correctly
|
|
- [ ] `exclude_by_column` matches a column in your data
|
|
- [ ] `exclude_values` list is correct
|
|
|
|
## ✅ Data Loading Test
|
|
|
|
- [ ] **Test data loading**
|
|
```bash
|
|
python -c "from data_loader import load_sales_data; from config import get_data_path; df = load_sales_data(get_data_path()); print(f'✓ Loaded {len(df):,} rows')"
|
|
```
|
|
|
|
- [ ] **Verify date coverage**
|
|
- Check output shows good date coverage (>95% recommended)
|
|
- Verify date range matches expectations
|
|
|
|
- [ ] **Verify revenue column**
|
|
- Check that revenue values are numeric
|
|
- Verify no unexpected NaN values
|
|
|
|
## ✅ First Analysis Test
|
|
|
|
- [ ] **Copy template**
|
|
```bash
|
|
cp analysis_template.py test_analysis.py
|
|
```
|
|
|
|
- [ ] **Run test analysis**
|
|
```bash
|
|
python test_analysis.py
|
|
```
|
|
|
|
- [ ] **Verify outputs**
|
|
- [ ] Chart generated successfully
|
|
- [ ] Chart saved to `charts/` directory
|
|
- [ ] Revenue validation passed
|
|
- [ ] No errors in console output
|
|
|
|
## ✅ Common Issues Check
|
|
|
|
Before running full analyses, verify:
|
|
|
|
- [ ] **Column names match** - All column mappings in config.py match your CSV
|
|
- [ ] **Date format works** - Dates are parsing correctly (check data_loader output)
|
|
- [ ] **Date range is correct** - MIN_YEAR and MAX_DATE include your data
|
|
- [ ] **LTM is configured** - If using LTM, dates are within your data range
|
|
- [ ] **Exclusions work** - If using exclusions, column and values are correct
|
|
|
|
## ✅ Ready for Production
|
|
|
|
Once all checks pass:
|
|
|
|
- [ ] **Create your analyses** using `analysis_template.py`
|
|
- [ ] **Add to batch runner** in `run_all_analyses.py`
|
|
- [ ] **Run all analyses** to generate complete analysis suite
|
|
|
|
---
|
|
|
|
## 🐛 Troubleshooting
|
|
|
|
If any check fails:
|
|
|
|
1. **Data loading issues:** See `.cursor/rules/data_loading.md`
|
|
2. **Configuration issues:** Review `config.py` comments
|
|
3. **Common errors:** See `.cursor/rules/common_errors.md`
|
|
4. **Pattern questions:** See `.cursor/rules/analysis_patterns.md`
|
|
|
|
---
|
|
|
|
**Checklist Version:** 1.0
|
|
**Last Updated:** January 2026
|