
Evaluate (and possibly plot) the General Dynamic Treatment Effect (GDTE) for a Generalized Error Correction Model (GECM)
Source:R/tseffects.R
ts.ci.gecm.plot.Rd
Evaluate (and possibly plot) the General Dynamic Treatment Effect (GDTE) for a Generalized Error Correction Model (GECM)
Usage
ts.ci.gecm.plot(
model = NULL,
x.vrbl = NULL,
y.vrbl = NULL,
x.vrbl.d.x = NULL,
y.vrbl.d.y = NULL,
x.d.vrbl = NULL,
y.d.vrbl = NULL,
x.d.vrbl.d.x = NULL,
y.d.vrbl.d.y = NULL,
te.type = "pte",
inferences.y = "levels",
inferences.x = "levels",
dM.level = 0.95,
h.limit = 20,
se.type = "const",
return.data = FALSE,
return.plot = TRUE,
return.formulae = FALSE,
...
)
Arguments
- model
the
lm
model containing the GECM estimates- x.vrbl
a named vector of the x variables (of the lower level of differencing, usually in levels d = 0) and corresponding lag orders in the GECM model
- y.vrbl
a named vector of the (lagged) y variables (of the lower level of differencing, usually in levels d = 0) and corresponding lag orders in the GECM model
- x.vrbl.d.x
the order of differencing of the x variable (of the lower level of differencing, usually in levels d = 0) in the GECM model
- y.vrbl.d.y
the order of differencing of the y variable (of the lower level of differencing, usually in levels d = 0) in the GECM model
- x.d.vrbl
a named vector of the x variables (of the higher level of differencing, usually first differences d = 1) and corresponding lag orders in the GECM model
- y.d.vrbl
a named vector of the y variables (of the higher level of differencing, usually first differences d = 1) and corresponding lag orders in the GECM model
- x.d.vrbl.d.x
the order of differencing of the x variable (of the higher level of differencing, usually first differences d = 1) in the GECM model
- y.d.vrbl.d.y
the order of differencing of the y variable (of the higher level of differencing, usually first differences d = 1) in the GECM model
- te.type
the desired treatment history.
te.type
determines the counterfactual series that will be applied to the independent variable. -1 represents a Pulse Treatment Effect (PTE). 0 represents a Step Treatment Effect (STE). These can also be specified viapte
,pulse
,ste
, andstep
. For others, see Vande Kamp, Jordan, and Rajan. The default ispte
- inferences.y
does the user want resulting inferences about the dependent variable in levels or in differences? The default is
levels
- inferences.x
does the user want to apply the counterfactual treatment to the independent variable in levels or in differences? The default is
levels
- dM.level
level of significance of the GDTE, calculated by the delta method. The default is 0.95
- h.limit
limit an integer for the number of periods to determine the GDTE (beginning at 0)
- se.type
the type of standard error to extract from the GECM model. The default is
const
, but any argument tovcovHC
from thesandwich
package is accepted- return.data
return the raw calculated GDTEs as a list element under
estimates
. The default isFALSE
- return.plot
return the visualized GDTEs as a list element under
plot
. The default isTRUE
- return.formulae
return the formulae for the GDTEs as a list element under
formulae
(for the GDTEs) andbinomials
(for the treatment history). The default isFALSE
- ...
other arguments to be passed to the call to plot
Value
depending on return.data
, return.plot
, and return.formulae
, a list of elements relating to the GDTE
Details
We assume that the GECM model estimated is well specified, free of residual autocorrelation, balanced, and meets other standard time-series qualities. Given that, to obtain causal inferences for the specified treatment history, the user only needs a named vector of the x and y variables, as well as the order of the differencing. Internally, the GECM to ADL equivalences are used to calculate the GDTEs from the GECM
Examples
# ADL(1,1)
# Use the toy data to run a GECM. No argument is made this
# is well specified or even sensible; it is just expository
model <- lm(d_y ~ l_1_y + l_1_x + l_1_d_y + d_x + l_1_d_x, data = toy.ts.interaction.data)
test.pulse <- ts.ci.gecm.plot(model = model,
x.vrbl = c("l_1_x" = 1),
y.vrbl = c("l_1_y" = 1),
x.vrbl.d.x = 0,
y.vrbl.d.y = 0,
x.d.vrbl = c("d_x" = 0, "l_1_d_x" = 1),
y.d.vrbl = c("l_1_d_y" = 1),
x.d.vrbl.d.x = 1,
y.d.vrbl.d.y = 1,
te.type = "pulse",
inferences.y = "levels",
inferences.x = "levels",
h.limit = 10,
return.plot = TRUE,
return.formulae = TRUE)
names(test.pulse)
#> [1] "plot" "formulae" "binomials"