{smcl} {* *! Version 1.0.3 Sept 26 2022 }{...} {viewerjumpto "Syntax" "winratio##syntax"}{...} {viewerjumpto "Description" "winratio##description"}{...} {viewerjumpto "Options" "winratio##options"}{...} {viewerjumpto "Examples" "winratio##examples"}{...} {viewerjumpto "Saved results" "winratio##savedresults"}{...} {viewerjumpto "References" "winratio##references"}{...} {viewerjumpto "Authors" "winratio##authors"}{...} {cmd: help winratio} {hline} {title:Title} {phang} {bf:winratio} {hline 2} calculates the unmatched Win Ratio for prioritised outcomes. {marker syntax}{...} {title:Syntax} {phang} {cmd:winratio} {it:idvar} {it:trtvar} {cmd:,} {cmdab:out:comes(}{it:list}{cmd:)} [ {opth str:ata(varname)} {cmdab:stw:eight(}{it:weighting method}{cmdab:)} {opth pf:ormat(%fmt)} {opth wrf:ormat(%fmt)} {cmdab:saving(filename [, replace])} ] {pstd} {it:idvar} is a unique identifier variable and may be string or numeric. {pstd} {it:trtvar} must be a binary 0 1 numeric variable, where 0 and 1 indicate the control and intervention groups respectively. {p 4 4 2} {cmd: outcomes(}{it:list}{cmd:)} is a required option which will be repeated for each outcome in the hierarchy (starting with highest through to lowest priority); {it: list} consists of a set of 3 items which provide information about (i) the outcome variable(s), (ii) the type of outcome and (iii) either the follow-up time variable(s) if the outcome is a time-to-event or a repeated event, or the direction of comparison (<[#] or >[#]) if the outcome is continuous, ordinal or binary. See options and examples below for more details. {pstd} {cmd:if} and {cmd:by} are not allowed. {marker description}{...} {title:Description} {pstd} {cmd:winratio} The win ratio was introduced in 2012 by Pocock {it:et al} {cmd:[1]} as a novel approach to the analysis of composite endpoints in randomised clinical trials. The approach motivated by the Finkelstein–Schoenfeld test {cmd:[2]} takes into account the order of importance of the component events and also allows the components to be different types of outcomes e.g. time-to-event (failure or success), quantitative outcomes such as quality of life scores and vital signs, repeated events, and more. {marker options}{...} {title:Options} {pstd} {cmd: outcomes(}{it:list}{cmd:)} is a required option which will be repeated for each outcome in the hierarchy, starting with the first outcome through to the last outcome; {it: list} consists of {cmd: 3 items} which provide information about each outcome as follows: {pstd} The {cmd:first item} in each specifies the outcome variable(s). For binary, ordinal, and continous outcomes this will be the variable name. In the case of a time-to-event outcome this will be a binary (0/1) variable indicating whether or not the event occurred. In the case of a repeated event outcome this will be the stub of the names of a set of binary (0/1) variables indicating the repeat events e.g. hosp if hosp1, hosp2, hosp3 are three binary variables indicating repeat hospitalisations. {pstd} The {cmd: second item} in each set will indicate the {it:type of outcome}. This will be {cmd: c} for continuous, ordinal categorical or binary outcomes, {cmd: tf} for time-to-event failure outcomes, {cmd: ts} for time-to-event success outcomes, and {cmd: r#} for repeat events where # is the maximum number of variables to consider in the analysis of the repeat events. {pstd} The {cmd:third item} in each set depends on the type of outcome. For continuous, ordinal or binary outcomes this will be {cmd: >}[#] or {cmd:<}[#] to indicate the direction of the comparison i.e. whether higher or lower values are better, and where # is the margin of success required for a win; when # is not specified the default margin is 0. For time-to-event outcomes this will be the name of the variable containing the follow-up (censoring or event) time. For repeat events this will be the stub of the names of a set of variables containing follow-up times. {pstd} {opth strata(varname)} allows computation of the stratified win ratio. {cmd:varname} must be a numeric categorical variable. {pstd} {cmdab:stweight(}{it:method}{cmdab:)} allows specification of the weighting method to be used for the stratified win ratio. {it:method} can be {bf:unweighted} (the default if no weighting option is specified along with strata: test statistics and variance estimators are simply summed across strata) {bf:iv} for inverse-variance weights and {bf:mh} for Mantel-Haenszel (MH) weights (each strata weighted according to the number of patients in the strata). {pstd} {cmdab:saving(filename [, replace])} saves a dataset containing the number of wins, losses and ties at each level of the hierarchy and for each strata. {pstd} {opth pf:ormat(%fmt)} controls the numeric display format for p-values; for example, for a p-value with a leading 0 and 4 decimal places %05.4f. {pstd} {opth wrf:ormat(%fmt)} controls the numeric display format for the estimated win ratio and confidence intervals. {marker examples}{...} {title:Examples} {pstd} The following examples use the dataset {cmd: win_ratio_example.dta} which is provided along with the program files. {p 4 4 2} {bf:Example 1:} Consider a trial with two prioritised outcomes, (i) death and (ii) heart failure hospitalisation, where death is considered to be more important that heart failure hospitalisation. Death is a time-to-event (failure) outcome with a binary (0/1) variable {cmd:dth} indicating whether the patient died or not and the variable {cmd: fudth} containing the event time or censoring time. Heart failure hospitalisation is a repeated event with a maximum of 4 repeat events observed. {cmd: hf1}, {cmd: hf2}, {cmd: hf3}, {cmd: hf4} are four binary (0/1) variables indicating the event. {cmd: fuhf1}, {cmd: fuhf2}, {cmd: fuhf3}, {cmd: fuhf4} are four variables containing the event time or censoring time. For example, if a patient did not experience any hospitalisations for heart failure and was censored at 300 days then {cmd: hf1-hf4} would each be 0 and {cmd: fuhf1-fuhf4} would each be 300. If a patient experienced a heart failure hospitalisation at day 90 and was then censored at day 250 without any further heart failure hospitalisations, then {cmd: hf1} would be 1 and {cmd: fuhf1} would be 90, {cmd: hf2-hf4} would each contain 0 and {cmd: fuhf2-fuhf4} would each be 250. The variable {cmd: patid} is a unique patient identifier and {cmd: trt} is a binary variable indicating the active treatment group. {pstd} The command syntax for this analysis would then be: {pstd} {cmd: use win_ratio_example.dta} {pstd} {cmd: winratio patid trt , outcomes(dth tf fudth) outcomes(hf r4 fuhf)} {pstd} {bf:Example 2:} Suppose we now add another outcome, quality of life ({cmd:qol}), as the third prioritised outcome in the hierarchy. {cmd:qol} is a continuous variable and higher values are better. The command syntax would then be: {pstd} {cmd: winratio patid trt , outcomes(dth tf fudth) outcomes(hf r4 fuhf) outcomes(qol c >) } {pstd} {bf:Example 3:} Suppose we now require the quality of life score to be more than 0.1 points higher to declare a winner. The command syntax would then be: {pstd} {cmd: winratio patid trt , outcomes(dth tf fudth) outcomes(hf r4 fuhf) outcomes(qol c >0.1)} {pstd} Notice that there is no gap between > and 0.1. We could also specify >=0.1 for at least 0.1 points higher. {pstd} {bf:Example 4:} Suppose we now want to repeat the analysis in Example 1 but we also want to stratify by the variable {cmd: blvar} using Mantel-Haenszel weights. The command syntax would then be: {pstd} {cmd: winratio patid trt , outcomes(dth tf fudth) outcomes(hf r4 fuhf) strata(blvar) stweight(mh) } {pstd} {bf:Example 5:} Note that binary variables and ordered categorical/discrete variables are dealt with in the same way as continuous variables. For example, suppose we use the (0/1) binary variable {cmd: qol_bin} where 1 indicates a better quality of life the command syntax would then be: {pstd} {cmd: winratio patid trt , outcomes(dth tf fudth) outcomes(hf r4 fuhf) outcomes(qol_bin c >)} {marker savedresults}{...} {title:Saved results} {pstd} {cmd:winratio} stores the following in {cmd:r()}: {synoptset 20 tabbed}{...} {p2col 5 20 24 2: Scalars}{p_end} {synopt:{cmd:r(p)}}p-value{p_end} {synopt:{cmd:r(se_logwr)}}standard error of log win ratio. The standard error of the win ratio is calculated using the method described at the end of the Supplement of Pocock 2012 {p_end} {synopt:{cmd:r(wr)}}win ratio{p_end} {synopt:{cmd:r(logwr)}}log win ratio{p_end} {pstd} If the strata option is used then the following results are also stored: {synopt:{cmd:r(p#)}}p-value in strata #{p_end} {synopt:{cmd:r(se#)}}standard error of log win ratio in strata #{p_end} {synopt:{cmd:r(wr#)}}win ratio in strata #{p_end} {synopt:{cmd:r(logwr#)}}log win ratio in strata #{p_end} {marker references}{...} {title:References} {phang} 1. Pocock SJ, Ariti CA, Collier TJ, Wang D. The win ratio: a new approach to the analysis of composite endpoints in clinical trials based on clinical priorities. {it:Eur Heart J} 2012;33:176–182. {marker C1985}{...} {phang} 2. Finkelstein DM, Schoenfeld DA. Combining mortality and longitudinal measures in clinical trials. {it:Stat Med} 1999;18:1341–1354. {p_end} {marker authors}{...} {title:Authors} {phang}Tim Collier, Medical Statistics Department, London School of Hygiene and Tropical Medicine, tim.collier@lshtm.ac.uk {phang}John Gregson, Medical Statistics Department, London School of Hygiene and Tropical Medicine, john.gregson@lshtm.ac.uk