Inspiration

Dengue prevention depends on acting early and focusing effort where it may help most. Singapore reported more than 4,000 dengue cases in 2025, and its warm, humid climate allows Aedes mosquitoes to remain a concern throughout the year.

I wanted to explore whether weather and past dengue-cluster activity could help community teams decide which planning areas to check first. That idea became DengueRadar, a two-week local risk forecasting concept.

What it does

DengueRadar is designed to show a map ranking planning areas by their predicted dengue risk around two weeks ahead. For each area, the dashboard aims to show a risk probability, the factors that contributed to the forecast, and relevant data-quality information.

The goal is to help town councils and community teams prioritise prevention visits and outreach. The dashboard is a decision-support prototype, not a replacement for official dengue alerts or public-health advice.

How I built it

First, I conducted some literature research on dengue risk prediction in Singapore to understand existing predictive systems. Then, I design the project as a Databricks pipeline:

  1. Source: Collect dated dengue-cluster snapshots, weather records, national dengue counts, and planning-area boundaries.
  2. Ingestion: Use Lakeflow Jobs to schedule file and API imports into Delta tables.
  3. Transform: Clean the records, map reported cluster locations to planning areas, align dates, and create lagged weather features.
  4. Model and analytics: Compare forecasting models with a recent-activity baseline. Use MLflow to track model runs and evaluation, then store dated scores in curated Delta tables for Databricks SQL.
  5. Output: Use AI/BI dashboards to show risk rankings and trends. Genie can answer questions about the curated results, while Databricks Apps can host a custom risk map and exportable outreach list. Unity Catalog supports governance across the data and model assets.

Challenges I ran into

The main challenge was finding historical dengue data at a useful local scale. National weekly case counts provide important context, but they do not tell me which planning areas had dengue activity.

I found dated SGCharts snapshots of NEA cluster reports from 2015 to 2020. They give me a starting point for a historical prototype, but the archive has gaps, and cluster numbers are not stable over time. That means I need to define the prediction target carefully, handle missing snapshots, and avoid treating a missing record as zero dengue risk.

Weather data also comes from monitoring stations rather than planning areas. I need a clear method for matching station readings to each area and must check that the historical weather and cluster records overlap sufficiently.

Accomplishments that I'm proud of

As a solo project, I brought together the problem definition, data-source review, forecast design, and Databricks architecture. I also refined the prediction target to match the available archive: estimating whether a planning area will show reported active-cluster presence in a later snapshot, rather than claiming to predict the start of a new cluster.

This made the project more transparent about what the available data can support and what still needs validation.

What I learned

I learned that a useful forecast depends on the meaning and timing of its data, not just the model. A national case count cannot stand in for a local outcome, and a cluster’s cumulative case total should not be confused with weekly cases.

What's next for me

Next, I plan to audit the dated snapshots, confirm usable overlap with historical weather, and build a simple baseline before comparing more complex models. I’ll evaluate how well the system ranks the five highest-priority areas and whether its probabilities are calibrated.

Before using DengueRadar for current operations, I would need recent local data and a fresh evaluation. Historical results from 2015–2020 alone cannot establish how well a model would forecast dengue risk today.

Built With

Share this project:

Updates

Submission history