9 Introduction

Consider two treatments, \(Tr_1\) and \(Tr_2\), and a control, \(C\). We estimate propensity scores with three separate logistic regression models where model one predicts \(Tr_1\) with \(C\), model two predicts \(Tr_2\) with \(C\), and model three predicts \(Tr_1\) with \(Tr_2\). The triangle plot in Figure 10.1 depicts the fitted values (i.e. propensity scores) from the three models on each edge of the triangle. Since each unit has a propensity score in two of the three models, their scores are connected. We can then calculate three distances between propensity scores for each possible matched triplet using the three models. Given those distances, the matched triplets with the smallest standardized distance (i.e. \(D_{x,y} = \frac{| PS_{x} - PS_{y} |}{sd(PS)}\)) are retained. Several methods for determining which matched triplets to retain are provided with the possibility of the researcher to implement their own. The black lines in Figure 10.1 represent one matched triplet (i.e. one row in the returned data frame).

Propensity score analysis of two groups typically use dependent sample t-tests (Austin 2010). The analogue for matched triplets include repeated measures ANOVA and the Freidman Rank Sum Test. The TriMatch package provides utility functions for conducting and visualizing these statistical tests. Moreover, a set of functions extending PSAgraphics (J. E. Helmreich and Pruzek 2009) for matched triplets to check covariate balance are provided.

9.1 The TriMatch Algorithm

The trips and trimatch functions are used to estimate the propensity scores and find the best matched triplets, respectively.

A. Propensity scores are estimated for three models using logistic regression. \[{ PS }_{ 1 }=e({ x }_{ { T }_{ 1 }C })=Pr(z=1|{ X }_{ { T }_{ 1 }C })\] \[{ PS }_{ 2 }=e({ x }_{ { T }_{ 2 }C })=Pr(z=1|{ X}_{ { T }_{ 2 }C })\] \[{ PS }_{ 3 }=e({ x }_{ { T }_{ 2 }{ T }_{ 1 } })=Pr(z=1|{ X }_{ { T }_{ 2 }{ T }_{ 1 } })\]

B. Match order is determined. The default is to start with the larger of the two treatments, followed the second treatment, and lastly the control group. However, the match order is configurable vis-a-vis the match.order parameter.

C. Three distance matrices are calculated, \(D_1\), \(D_2\), and \(D_3\) corresponding to the propensity scores estimated in step ??. That is, \(D_1\) is a \(n_{Tr_1}\) x \(n_{Tr_2}\) matrix where \(D_1[x,y]\) is the standardized distance between \(PS_1[x]\) and \(PS_1[y]\).

D. Distances greater than the caliper, 0.25 by default as recommended by (Rosenbaum and Rubin 1985), are eliminated. The caliper is specified in standard units so 0.25 corresponds to one-quarter of one standard deviation.

E. If partial exact matching is desired, three logical matrices are created with the same dimensions as the distance matrices calculated in step ??. That is, position \(x,y\) in the matrix is true if the covariate(s) to match exactly on between unit \(x\) and \(y\) match exactly. Distances where exact there are not exact matches are eliminated.

F. For the remaining units, all possible combinations of matched triplets are formed and a total standardized distance is calculated.

The result of the above procedure is the equivalent of caliper matching in the two group case. That is, all possible matches within a specified caliper are retained. This can be achieved by specifying method = NULL parameter to the trimatch function. Two additional methods are provided to reduce the number of matched triplets. The maximumTreat method attempts to reduce the number of duplicate treatment units. This is analogous to matching without replacement in the two group case. However, treatment 1 units may be matched to two different treatment 2 units if that treatment 2 unit would otherwise not be matched. The OneToN method will allow the user to specify exactly how many times each treatment 1 and treatment 2 may be reused.