estiMINT bundles a model in each direction between EIR and the human biting rate. Neither quantity is one a programme usually supplies, and the pair exists mainly for the mosquito-density method, which routes a change in mosquito numbers through the biting rate.
Both take the same six setting covariates as the prevalence model and differ only in the driving column, and note that the model named "hbr" takes an HBR as its input. It returns an EIR.
Across the training data HBR spans roughly 5e3 to 7e7, against an EIR range of tens to hundreds, so the hbr model treats its input on a log scale. Sweep hbr_y9 log-spaced rather than linearly.
HBR to EIR
The hbr model maps a biting rate to an EIR, entering as hbr_y9. This is the direction the density method uses to turn a changed biting rate back into an EIR.
back = run_xgb_model(pd.DataFrame([{**setting, "hbr_y9": hbr}]), hbr_to_eir)[0]f"eir = {back:.2f}"
The EIR that comes back is 6% too high, because the two models were fitted separately, each with its own smoothing, and nothing constrains one to be the exact inverse of the other.
Where a prevalence is available the EIR from the prevalence model is the estimate, and converting onward to an HBR and back only degrades it. A prevalence-derived EIR and an HBR-derived EIR carry different biases. A difference of a few percent between them says more about the models than about the districts.
The ratio in the density method
This gap is why estimate_eir_with_mosquito_delta never takes an EIR that has been through both models as an answer. It predicts the EIR at both the baseline HBR and the changed HBR and keeps only the ratio of the two, in which the common bias cancels. The ratio is then applied to a baseline EIR from the prevalence model, which never went near the HBR models.