addMahal: Rank-Based Mahalanobis Distance Matrix

addMahalR Documentation

Rank-Based Mahalanobis Distance Matrix

Description

Adds a rank-based Mahalanobis distance to an exisiting distance matrix.

Usage

addMahal(costmatrix, z, X)

Arguments

costmatrix

An existing cost matrix with sum(z) rows and sum(1-z) columns. The function checks the compatability of costmatrix, z and p; so, it may stop with an error if these are not of appropriate dimensions. In particular, costmatrix may come from startcost().

z

A vector with z[i]=1 if individual i is treated or z[i]=0 if individual i is control. The rows of costmatrix refer to treated individuals and the columns refer to controls.

X

A matrix with length(z) rows containing covariates.

Details

The rank-based Mahalanobis distance is defined in section 9.3 of Rosenbaum (2020).

Value

A new distance matrix that is the sum of costmatrix and the rank-based Mahalanobis distances.

Author(s)

Paul R. Rosenbaum

References

Rosenbaum, P. R. (2020) <doi:10.1007/978-3-030-46405-9> Design of Observational Studies (2nd Edition). New York: Springer.

Rubin, D. B. (1980) <doi:10.2307/2529981> Bias reduction using Mahalanobis-metric matching. Biometrics, 36, 293-298.

Examples

data(binge)
# Select two treated and three controls from binge
d<-binge[is.element(binge$SEQN,c(109315,109365,109266,109273,109290)),]
z<-1*(d$AlcGroup=="B")
names(z)<-d$SEQN
attach(d)
x<-cbind(age,female)
detach(d)
rownames(x)<-d$SEQN
dist<-startcost(z)
z
x
dist
dist<-addMahal(dist,z,x)
dist
rm(z,x,dist,d)

iTOS documentation built on Sept. 11, 2024, 8:57 p.m.