Utility-weighted ordinal analysis

The most common primary endpoint in the stroke field is the ordinal modified Rankin scale (mRS), from 0 to 6 (death). It has been argued that the Utility-Weighted mRS is more patient-centered, thus preferable. In the UW mRS, each mRS score is substituted by a value following this:

mRS of 0 = 1.0
mRS of 1 = 0.91
mRS of 2 = 0.76
mRS of 3 = 0.65
mRS of 4 = 0.33
mRS of 5 = 0
mRS of 6 = 0

and the estimand is the mean difference between groups using regular linear regression. Here are two recent examples: 1 and 2

@f2harrell is there any advantage of using this method instead of ordinal regression and estimating the mean difference through it?

Another Q: is there any alternative in weighting mRS in an ordinal regression?


This is a super question that I had hoped someone would ask.

Utilities provide an ultimate way to quantify treatment benefit in many situations. But the utilities are still discrete and have floor or ceiling effects, so they still need to be modeled as ordinal. When originally fitting an ordinal model it does not matter whether Y is coded as A, B, C, …, 1, 2, 3, …, mRS, or with utilities. When using the fitted ordinal model to estimate mean Y | X or differences in means, utilities are inserted into the formula for the mean from a discrete distribution, at the last second. So then you’re estimating mean utility.

1 Like

So cool. Do you have any online code available? That’s something I’ve never seen before.

Please correct me if I’m wrong.

If one wants to estimate the mean mRS by treatment (tx) in an ordinal regression, this is the formula:

\mathrm{E}[\mathrm{mRS} \mid \mathrm{tx}=t]=\sum_{Y \in\{0,1,2,3,4,5,6\}} Y \cdot \mathrm{P}(\mathrm{mRS}=Y \mid \mathrm{tx}=t)

On the other hand, to estimate the mean utility-weighted mRS (UWmRS), this is the formula instead:

\mathrm{E}[\mathrm{UWmRS} \mid \mathrm{tx}=t]=\sum_{\text{UW-Y} \in\{1.0,0.91,0.76,0.65,0.33,0,0\}} \text{UW-Y} \cdot \mathrm{P}(\mathrm{mRS}=Y \mid \mathrm{tx}=t)

Yes but clearer if you wrote the sum over y \in [0,6] of U_{y} P(…).

I think the Mean.orm function has an option to provide scores like U.

1 Like