netmatch function

Matching Estimators with Network Data

Matching Estimators with Network Data

WARNING : This function is still in development and has not been tested throughly. Following Aral et al. (2009), netmatch computes matching estimators for network data. The function netmatch_prepare, which prepares the data to be used with matchit from the MatchIt package, is called by netmatch.

netmatch_prepare( dat, graph, timevar, depvar, covariates, treat_thr = rep(1L, length(graph)), adopt_thr = rep(1L, length(graph)), expo_pcent = FALSE, expo_lag = 0L ) netmatch( dat, graph, timevar, depvar, covariates, treat_thr = rep(1L, length(graph)), adopt_thr = rep(1L, length(graph)), expo_pcent = FALSE, expo_lag = 0L, ... )

Arguments

  • dat: data.frame with dynamic data. Must be of nrow(dat)==nslices(graph)*nnodes(graph).
  • graph: List with sparse matrices.
  • timevar: Character scalar. Name of time variable
  • depvar: Character scalar. Name of the dependent variable
  • covariates: Character vector. Name(s) of the control variable(s).
  • treat_thr: Either a numeric scalar or vector of length nslices(graph). Sets the threshold of exposure at which it is considered that an observation is treated.
  • adopt_thr: Either a numeric scalar or vector of length nslices(graph). Sets the threshold of depvar at which it is considered that an observation has adopted a behavior.
  • expo_pcent: Logical scalar. When TRUE, exposure is computed non-normalized (so it is a count rather than a percentage).
  • expo_lag: Integer scalar. Number of lags to consider when computing exposure. expo_lag=1 defines exposure in T considering behavior and network at T-1.
  • ...: Further arguments to be passed to matchit.

Returns

In the case of netmatch_prepare

  • dat: A data.frame with the original data (covariates), plus the following new variables: treat, adopt, exposure.

  • match_model: A formula to be passed to netmatch

netmatch returns the following: - fATT: A numeric vector of length N1N1 (number of treated used in the matching process). Treatment effects on the treated at the individual level

  • match_obj: The output from matchit.

Details

In Aral et al. (2009), the matching estimator is used as a response to the fact that the observed network is homophilous. Essentially, using exposure as a treatment indicator, which is known to be endogenous, we can apply the same principle of matching estimators in which, after controlling for characteristics (covariates), individuals from the treated group (exposed to some behavior) can be compared to individuals from the control group (not exposed to that behavior), as the only difference between the two is the exposure.

As pointed out in King & Nielsen (2015), it is suggested that, contrary to what Aral et al. (2009), the matching is not performed over propensity score since it is know that the later can increase imbalances in the data and thus obtaining exactly the opposed outcome that matching based estimators pursue.

A couple of good references for matching estimators are Imbens and Wooldridge (2009), and Sekhon (2008).

References

Aral, S., Muchnik, L., & Sundararajan, A. (2009). Distinguishing influence-based contagion from homophily-driven diffusion in dynamic networks. Proceedings of the National Academy of Sciences of the United States of America, 106(51), 21544–21549. tools:::Rd_expr_doi("10.1073/pnas.0908800106")

Imbens, G. W., & Wooldridge, J. M. (2009). Recent Developments in the Econometrics of Program Evaluation. Journal of Economic Literature, 47(1), 5–86. tools:::Rd_expr_doi("10.1257/jel.47.1.5")

King, G., & Nielsen, R. (2015). Why Propensity Scores Should Not Be Used for.

Sekhon, J. S. (2008). The Neyman-Rubin Model of Causal Inference and Estimation Via Matching Methods. The Oxford Handbook of Political Methodology. tools:::Rd_expr_doi("10.1093/oxfordhb/9780199286546.003.0011")

Author(s)

George G. Vega Yon

  • Maintainer: George Vega Yon
  • License: MIT + file LICENSE
  • Last published: 2023-08-30

Downloads (last 30 days):