riSynth: Randomization Inference on ATT using Synthetic Control

Description Usage Arguments Details Value

View source: R/regression_functions.R

Description

Estimates average treatment effect on the treated using the Synthetic Control Method, then conducts inference using randomization inference by permuting the treatment vector to obtain the sharp null distribution

Usage

1
2
3
riSynth(data, outcome, treatment, covs, treatment.year, pretreatment.year,
  posttreatment.year = NULL, unit.variable, unit.names.variable,
  time.variable, include.past.Y = TRUE, snowfall = FALSE, maxiter = 1000)

Arguments

data

a data frame containing the variables in the model

outcome

a character. Name of the outcome variable.

treatment

a character. Name of the treatment variable.

covs

a character vector. Names of the covariates to be used in the model.

treatment.year

the year or time period at which treatment occurs

pretreatment.year

the years or time periods before treatment occurs. Observations from these years or time periods will be used to create the synthetic contorl

posttreatment.year

the years or time periods after treatment occurs. Observations form these years or time periods will be used to calculate treatment effects.

unit.variable

A scalar identifying the column number or column-name character string associated unit numbers. The unit.varibale has to be numeric.

unit.names.variable

A scalar or column-name character string identifying the column with the names of the units. This variable has to be of mode character.

time.variable

A scalar identifying column number or column-name character string associated with period (time) data. The time variable has to be numeric.

include.past.Y

a logical; if TRUE past values of the outcomes are included as a covariate to produce the synthetic control

snowfall

a logical; if TRUE the function performs parallel computing using the snowfall package

maxiter

a positive integer. The maximum number of permutations to be included in the permutation matrix for the randomization distribution. Used as input for the genperms function.

Details

Estimates of treatment effects are obtained by the Synthetic Control Method through the Synthatt function. The randomization distribution is obtained by permuting the treatment vector. Internally, riSynth makes call to genperms. It is not yet possible to perform block or clustered randomization. The arguments treatment.year, pretreatment.year, posttreatment.year, unit.variable, unit.names.variable, time.variable, include.past.Y are input directly into the call for Synth::Synth.

Internally, riSynth makes use of the Synth function in the Synth package to calculate estimates of the ATT and the permute function in the permute package to create the randomization distribution. For computers with multiple cores, riSynth can perform parallel computation to improve computation speed.

Value

An object of class "riSynth"


mdtrinh/vietnamdata documentation built on May 3, 2019, 11:49 p.m.