Fixed-interval medication possession ratio

Divides the total days' supply of the fills dispensed in the observation period by the number of days from the first dispensing to the end of the period, the most common variant in the review by Raebel and colleagues. Time after the last refill counts in the denominator, so stopping treatment lowers the ratio. Supply that runs past the end of the period still counts unless the analyst truncates it, so the ratio can exceed 1.

Signature

MPR_fixed = sum_(i=1)^n [S_i] / D
Inputs
InputsDefinitionUnit
S_iDays' supply recorded for fill i dispensed in the observation perioddays
DDays from the first dispensing to the end of the observation period, counted inclusivelydays, above zero
Output
MPR_fixedDays' supply dispensed in the observation period as a share of the days in itproportion, can exceed 1, often reported as a percentage
  • n Number of fills dispensed in the observation period (count)

Function

Medication possession ratio from summed days' supply function

Maps a patient's dispensing records for one medicine, each a fill date and a days' supply, to the medication possession ratio (MPR): the days' supply dispensed divided by a count of days. The variants differ in which fills enter the numerator and which days form the denominator: a fixed interval from the first dispensing to the end of the observation period, or a refill interval between the first and last dispensing, with or without the last fill. Because supply is summed without regard to overlap, an uncapped MPR can exceed 1, and it is often capped at 1. The records follow the notation of the Medication Possession Ratio article. The proportion of days covered, which counts unique covered days instead, is HE-FM-PDC-001.

Computational function

  • Computational function: medication possession ratio variants from a fill history and window

    Takes a patient's fill history for one medicine, as dispensing days and days' supply, and the last day of the observation period, and returns the fixed-interval MPR (HE-FM-MPR-001), the refill-interval MPR including the last fill (HE-FM-MPR-002), the MPRm excluding it (HE-FM-MPR-003) and the capped fixed-interval MPR (HE-FM-MPR-004). It keeps the fills dispensed on or before the end day, sorts them by date, and builds each denominator from the first and last dispensing days. The inputs therefore differ from the formulas' variables: the formulas need D, f_1, f_n and S_n, and the function derives them from the raw fills.

    Inputs and outputs: fill_day: Dispensing day of each fill, with the first dispensing as day 1; required, whole numbers. Unit: day number.; supply: Days' supply of each fill, in the same order; required, above zero. Unit: days.; end_day: Last day of the observation period on the same scale; required. Unit: day number.; fixed, refill, mprm, capped: The four ratios. Unit: proportion; all but the capped ratio can exceed 1.

    Assumption: The fills are of one medicine, the dispensing record is complete and dispensed supply is taken as directed. The refill-interval ratios need at least two fills on different days.

    Worked example (Five fills over 180 days): The article's history gives a fixed-interval MPR of about 1.167, a refill-interval MPR of about 1.055, a capped MPR of 1 and an MPRm of about 1.065 (computed here for illustration). fill_day = [1,22,45,121,170]; supply = [30,30,30,90,30]; end_day = 180; MPR_fixed = 1.1667; MPR_refill = 1.0553; MPR_m = 1.0651; MPR_capped = 1

    Worked example (Patient stops after the third fill): With fills on days 1, 22 and 45 only, the fixed interval gives 0.5 while the refill interval including the last fill gives about 1.216 (computed here for illustration). fill_day = [1,22,45]; supply = [30,30,30]; end_day = 180; MPR_fixed = 0.5; MPR_refill = 1.2162; MPR_m = 1.3636; MPR_capped = 0.5

    Excel: =SUMIFS(Supplies,FillDays,"<="&EndDay)/(EndDay-MIN(FillDays)+1) With dispensing days in a range named FillDays, days' supply in a range named Supplies and the end day in a cell named EndDay, this returns the fixed-interval MPR. The refill-interval MPR is =SUM(Supplies)/(MAX(FillDays)-MIN(FillDays)+INDEX(Supplies,MATCH(MAX(FillDays),FillDays,0))) for fills up to the end day.

    R: mpr <- function(fill_day, supply, end_day) { k <- fill_day <= end_day; o <- order(fill_day[k]); f <- fill_day[k][o]; s <- supply[k][o]; n <- length(f); fixed <- sum(s)/(end_day-f[1]+1); c(fixed = fixed, refill = sum(s)/(f[n]-f[1]+s[n]), mprm = (sum(s)-s[n])/(f[n]-f[1]), capped = min(fixed, 1)) } Returns 1.1667, 1.0553, 1.0651 and 1 for the article's fills.

    Python: def mpr(fill_day, supply, end_day): fs = sorted((f, s) for f, s in zip(fill_day, supply) if f <= end_day); tot = sum(s for _, s in fs); fixed = tot/(end_day-fs[0][0]+1); return {"fixed": fixed, "refill": tot/(fs[-1][0]-fs[0][0]+fs[-1][1]), "mprm": (tot-fs[-1][1])/(fs[-1][0]-fs[0][0]), "capped": min(fixed, 1)} With a single fill the MPRm divides by zero, so such patients are handled separately.

    Test (Capped ratio equals the uncapped ratio at or below 1): The cap changes only values above 1. Expected result: TRUE. Excel check: =OR(MPRFixed>1,MPRCapped=MPRFixed)

    Test (Fixed and refill intervals agree when the last supply ends on the end day): When the last fill's supply runs out exactly on the end day, the two denominators are the same number of days and the two ratios coincide. Expected result: TRUE. Excel check: =IF(LastFillDay+LastSupply-1=EndDay,ABS(MPRRefill-MPRFixed)<1E-9,TRUE)

    Common error (Taking the last record rather than the latest dispensing): If the day-121 fill is the last row of unsorted data, using it as the last fill gives a refill-interval denominator of 120 + 90 = 210 days and a ratio of 1.000 instead of about 1.055 (computed here for illustration). The fills are sorted by dispensing day first.

    Source: Raebel MA, Schmittdiel J, Karter AJ, Konieczny JL, Steiner JF. Standardizing terminology and definitions of medication adherence and persistence in research employing electronic databases. Medical Care. 2013;51(8 Suppl 3):S11-S21. Table 2, MPR row: variations 1 to 3 and the cap at 1.0.

    D = E - f_1 + 1; MPR_fixed = sum_(i=1)^n [S_i] / D; MPR_refill = sum_(i=1)^n [S_i] / (f_n - f_1 + S_n); MPR_m = (sum_(i=1)^n [S_i] - S_n) / (f_n - f_1); MPR_capped = min(MPR_fixed, 1)

Try this function

Implementations

  • Excel

    Fixed-interval MPR from a supply range and window days

    Excel sums the named range holding the days' supply of the fills dispensed in the window and divides by the days from the named first dispensing day to the named end day, inclusive.

    =SUM(Supplies)/(EndDay-FirstFillDay+1)

Assumptions

  • Dispensed supply taken as directed

    Possession stands for use: medicine dispensed is assumed to be taken as prescribed. Patients may give medicine to others, discard it before refilling or stockpile it, none of which the ratio can detect.

  • Window long enough after the first dispensing

    Measurement starts with a dispensing, which biases the ratio upwards over short windows. In an asthma cohort whose fills typically lasted 2 to 3 months, the bias was most pronounced over periods shorter than about 9 months.

Worked examples

  • Fixed-interval MPR of the five-fill history over 180 days

    The article's five fills (days 1, 22, 45, 121 and 170) supply 30 + 30 + 30 + 90 + 30 = 210 days over a 180-day window, so the fixed-interval MPR is 210 / 180, about 1.167, although days 91 to 120 had no medicine.

    n = 5; S_i = [30,30,30,90,30]; D = 180; MPR_fixed = 1.1667
  • Fixed-interval MPR when the patient stops after the third fill

    If the patient in the same example made no fill after day 45, the three fills supply 90 days and the ratio over the 180-day window is 0.5, so the fixed interval records the discontinuation (computed here for illustration).

    n = 3; S_i = [30,30,30]; D = 180; MPR_fixed = 0.5

Common errors

  • Reading an MPR above 0.8 as continuous supply

    The article's patient has an MPR of about 1.167, or 1.000 capped, while 30 of the 180 days (16.7%) had no medicine and the PDC is about 0.833. Every version of the MPR passes an 80% threshold, so a dichotomised MPR hides the gap.

  • Summing supply across drugs in a class for the MPR

    When the MPR is calculated for a class, a switch between drugs with an overlap, or two drugs taken together, adds both supplies to the numerator. Two drugs from the same class each dispensed for 90 days on day 1 of a 90-day window give an MPR of 2 for 90 days of treatment (computed here for illustration).

Sources

  • Standard definitions and variants of the medication possession ratio

    Raebel MA, Schmittdiel J, Karter AJ, Konieczny JL, Steiner JF. Standardizing terminology and definitions of medication adherence and persistence in research employing electronic databases. Medical Care. 2013;51(8 Suppl 3):S11-S21. Table 2, MPR row: ratio of total days' supply to days in the observation period, variation 1 (most common) from the first dispensing to the end of the observation period, which accounts for discontinuation; overestimation with early refills, class switching and concurrent drugs in a class.

    View source →

  • Upward bias of dispensing-based adherence measures over short windows

    Vollmer WM, Xu M, Feldstein A, Smith D, Waterbury A, Rand C. Comparison of pharmacy-based measures of medication adherence. BMC Health Services Research. 2012;12:155. Results and Discussion: measures that require a dispensing to start are biased upwards, especially over periods shorter than about 9 months, in a cohort whose inhaled corticosteroid fills averaged 2 to 3 months.

    View source →

Canonical Identity

Stable URI · Machine-readable · Resolvable · CC BY 4.0