Research

Academic research

Two supervised papers from Kathmandu University, both January 2025. One asks whether Nepal's health data can answer questions, the other asks what clinical data can predict. Both ended up being about data quality.

Health Informatics

Digital Health in Nepal

Co-author, supervised by Dr. Rabindra Bista

A century of health records moving onto computers, and what still stops the data being useful.

The question. Nepal has spent decades shifting health records from paper into software: HMIS, DHIS2, LMIS, EWARS, OpenHIE for interoperability, electronic health records. Does all of it add up to a system that can actually answer questions?

What we did. Four of us traced the history from the 1925 malaria surveys to the IHIMS roadmap for 2021 to 2030, read the policy frameworks behind each step, and went to the Ministry of Health in Teku to interview the IT Officer at the Department of Health Services. Supervised by Dr. Rabindra Bista, Kathmandu University.

What we found. The scale is real: DHIS2 pulls from more than 10,000 health facilities, 874 indicators across 122 datasets, around 3,936 variables per facility every month. The limits are not about collecting more. They are data quality at the point of entry, systems that cannot talk to each other, and rural internet that drops exactly when a report is due.

What I learned. I expected the gap to be technology and found it was mostly data quality and coordination. That is why I now care more about validation than about models. A prediction built on a mismapped code is confidently wrong, and nobody downstream can tell.

10,000+
Health facilities reporting
Health InformaticsDHIS2Policy ResearchField Interviews

paper not yet hosted

Machine Learning

Predicting Heart Disease and Diabetes

Co-author, with Dr. Rajani Chulyadyo

Twelve classifiers on two clinical datasets. The simplest one won, and it still missed a fifth of the patients.

The question. Can standard machine learning spot heart disease and diabetes risk from routine clinical measurements?

What we did. Benchmarked 12 classifiers (logistic regression, KNN, decision tree, random forest, SVM across four kernels, a neural network, two Naive Bayes variants, and hard and soft voting ensembles) on the UCI Cleveland heart dataset (297 records after dropping incomplete ones) and the Pima Indian diabetes dataset. Tuned every model with both GridSearchCV and RandomizedSearchCV. Written as a Python package with unit tests, not a single notebook. Course research with Dr. Rajani Chulyadyo, Kathmandu University.

What we found. Logistic regression won on heart disease with 0.93 ROC-AUC and 90% accuracy, beating the neural network and every ensemble we tried. Tuning barely moved it: 91.67% before, 91.67% after. Diabetes was harder. A polynomial-kernel SVM reached 0.81 AUC but recovered only half the diabetic cases.

What I learned. Read the confusion matrix, not the headline. Our heart model produced zero false positives, which looks perfect until you see the other side: six of 28 real cases went undetected. A screening tool that never cries wolf but quietly misses a fifth of patients has the trade-off backwards. And the fanciest model is not the one that wins. Logistic regression beat everything we threw at it.

0.93
ROC-AUC, heart disease
Pythonscikit-learnSVMEnsembles