Summary magnitudes after removing control variables in several pairs where dependent variable is fixed.

Share:

Description

This builds on the function mag_ctrl, where the input matrix mtx has p columns. The first column is present in each of the (p-1) pairs. Its output is a matrix with four columns containing the names of variables and approximate overall estimates of the magnitudes of partial derivatives (dy/dx) and (dx/dy) for a distinct (x,y) pair in a row. The estimated overall derivatives are not always well-defined, because the real partial derivatives of nonlinear functions are generally distinct for each observation point.

Usage

1
someMagPairs(mtx, ctrl, dig = 6, verbo = TRUE)

Arguments

mtx

The data matrix with many columns where the first column is fixed and then paired with all other columns, one by one.

ctrl

data matrix for designated control variable(s) outside causal paths. A constant vector is not allowed as a control variable.

dig

Number of digits for reporting (default dig=6).

verbo

Make verbo= TRUE for printing detailed steps.

Details

The function mag_ctrl has kernel regressions: x~ y + ctrl and x~ ctrl to evaluate the‘incremental change’ in R-squares. Let (rxy;ctrl) denote the square root of that ‘incremental change’ after its sign is made the same as that of the Pearson correlation coefficient from cor(x,y)). One can interpret (rxy;ctrl) as a generalized partial correlation coefficient when x is regressed on y after removing the effect of control variable(s) in ctrl. It is more general than the usual partial correlation coefficient, since this one allows for nonlinear relations among variables. Next, the function computes ‘dxdy’ obtained by multiplying (rxy;ctrl) by the ratio of standard deviations, sd(x)/sd(y). Now our ‘dxdy’ approximates the magnitude of the partial derivative (dx/dy) in a causal model where y is the cause and x is the effect. The function also reports entirely analogous ‘dydx’ obtained by interchanging x and y.

someMegPairs function runs the function mag_ctrl on several column pairs in a matrix input mtx where the first column is held fixed and all others are changed one by one, reporting two partial derivatives for each row.

Value

Table containing names of Xi and Xj and two magnitudes: (dXidXj, dXjdXi). dXidXj is the magnitude of the effect on Xi when Xi is regressed on Xj (i.e., when Xj is the cause). The analogous dXjdXi is the magnitude when Xj is regressed on Xi.

Note

This function is intended for use only after the causal path direction is already determined by various functions in this package (e.g. someCPairs). That is, after the researcher knows whether Xi causes Xj or vice versa. The output of this function is a matrix of 4 columns, where first columns list the names of Xi and Xj and the next two numbers in each row are dXidXj, dXjdXi, respectively, representing the magnitude of effect of one variable on the other.

Author(s)

Prof. H. D. Vinod, Economics Dept., Fordham University, NY

References

Vinod, H. D.'Generalized Correlation and Kernel Causality with Applications in Development Economics' in Communications in Statistics -Simulation and Computation, 2015, http://dx.doi.org/10.1080/03610918.2015.1122048

Vinod, H. D. 'Matrix Algebra Topics in Statistics and Economics Using R', Chapter 4 in Handbook of Statistics: Computational Statistics with R, Vol.32, co-editors: M. B. Rao and C. R. Rao. New York: North Holland, Elsevier Science Publishers, 2014, pp. 143-176.

See Also

See mag_ctrl, someCPairs

Examples

1
2
3
  set.seed(34);x=sample(1:10);y=1+2*x+rnorm(10);z=sample(2:11)
  w=runif(10)
  ss=someMagPairs(cbind(y,x,z),ctrl=w)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.