Build a function that computes a weighted concentration-index criterion from a two-column response matrix. The first column is treated as the socioeconomic ranking variable and the second as the health outcome.
Usage
ci_factory(type = c("CI", "CIg", "CIc", "L"))Value
A function with signature function(y, wt) where y is a two-column
numeric matrix and wt is a vector of positive case weights. The returned
function drops incomplete rows and non-positive weights, then returns a
single non-negative concentration-index value. It returns 0 when fewer
than two valid observations remain or when the required denominator is
degenerate.
Details
This factory is intended for inequality-aware split scoring, where different
concentration-index variants can be swapped in while keeping a common
function(y, wt) interface.
"CI", "CIg", and "CIc" are rank-dependent indices. For these
scores, the returned function first converts y[, 1] to weighted
fractional ranks using rank_wt(). It then computes the weighted
covariance between rank and outcome and maps it to the requested index:
"CI" divides by the weighted mean of the outcome, "CIg" returns the
generalized form, and "CIc" applies an Erreygers-style range correction.
Absolute values are returned.
"L" is level-dependent. It uses the observed socioeconomic levels in
y[, 1] directly, together with the health outcome in y[, 2]:
$$L = \sum_i p_i \left(\frac{s_i - \mu_s}{\mu_s}\right)y_i$$
where p_i = w_i / sum_i w_i and mu_s = sum_i p_i s_i. The returned
value is abs(L).
Methodological warning: "L" requires the first response column to be a
meaningful socioeconomic level variable, ideally income, consumption,
expenditure, or another non-negative ratio-scale SES measure. It should
not be used naively with a centered PCA wealth-index score whose mean may
be close to zero or whose level scale has no direct interpretation. If
using DHS wealth scores, treat "L" as a sensitivity analysis unless a
defensible level interpretation exists.
In mathematical notation, for weighted fractional rank R, outcome Y,
weighted outcome mean mu, and weighted covariance cov_w, the three
implemented scores are:
$$CI = \left|2 cov_w(R, Y) / \mu\right|$$
$$CIg = \left|2 cov_w(R, Y)\right|$$
$$CIc = 4\left|2 cov_w(R, Y)\right| / (max(Y) - min(Y))$$
These scores are used as non-negative within-node inequality impurities in the greedy tree and forest. A value closer to zero means less socioeconomic-related inequality in the outcome within that node.
References
Wagstaff A, van Doorslaer E, Watanabe N (2003). "On Decomposing the Causes of Health Sector Inequalities with an Application to Malnutrition Inequalities in Vietnam." Journal of Econometrics, 112(1), 207-223. doi:10.1016/S0304-4076(02)00161-6.
Wagstaff A (2011). "The concentration index of a binary outcome revisited." Health Economics, 20(10), 1155-1160. doi:10.1002/hec.1752.
Erreygers G (2009). "Correcting the concentration index." Journal of Health Economics, 28(2), 504-515. doi:10.1016/j.jhealeco.2008.02.003.
Erreygers G, Kessels R (2017). "Regression-Based Decompositions of Rank- Dependent Indicators of Socioeconomic Inequality of Health." International Journal of Environmental Research and Public Health, 14(7), 673. doi:10.3390/ijerph14070673.