来自图书《MPlus中介调节模型》
模型方程:
Y = b_0 + b_1M + b_2W + b_3Z + b_4MW + b_5MZ + c'X
M = a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ
代入 M 的方程:
Y = b_0 + b_1(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ) + b_2W + b_3Z + b_4(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)W + b_5(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)Z + c'X
展开括号:
Y = b_0 + a_0b_1 + a_1b_1X + a_2b_1W + a_3b_1Z + a_4b_1XW + a_5b_1XZ + b_2W + b_3Z + a_0b_4W + a_1b_4XW + a_2b_4WW + a_3b_4ZW + a_4b_4XWW + a_5b_4XZW + a_0b_5Z + a_1b_5XZ + a_2b_5WZ + a_3b_5ZZ + a_4b_5XWZ + a_5b_5XZZ + c'X
模型方程:
Y = b_0 + b_1M + b_2W + b_3Z + b_4MW + b_5MZ + c'X
M = a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ
代入 M 的方程:
Y = b_0 + b_1(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ) + b_2W + b_3Z + b_4(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)W + b_5(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)Z + c'X
展开括号:
Y = b_0 + a_0b_1 + a_1b_1X + a_2b_1W + a_3b_1Z + a_4b_1XW + a_5b_1XZ + b_2W + b_3Z + a_0b_4W + a_1b_4XW + a_2b_4WW + a_3b_4ZW + a_4b_4XWW + a_5b_4XZW + a_0b_5Z + a_1b_5XZ + a_2b_5WZ + a_3b_5ZZ + a_4b_5XWZ + a_5b_5XZZ + c'X
整理为 Y = a + bX 的形式:
Y = (b_0 + a_0b_1 + a_2b_1W + a_3b_1Z + b_2W + b_3Z + a_0b_4W + a_2b_4WW + a_3b_4ZW + a_0b_5Z + a_2b_5WZ + a_3b_5ZZ) + (a_1b_1 + a_4b_1W + a_5b_1Z + a_1b_4W + a_4b_4WW + a_5b_4ZW + a_1b_5Z + a_4b_5WZ + a_5b_5ZZ + c')X
模型方程:
Y = b_0 + b_1M + b_2W + b_3Z + b_4MW + b_5MZ + c'X
M = a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ
代入 M 的方程:
Y = b_0 + b_1(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ) + b_2W + b_3Z + b_4(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)W + b_5(a_0 + a_1X + a_2W + a_3Z + a_4XW + a_5XZ)Z + c'X
展开括号:
Y = b_0 + a_0b_1 + a_1b_1X + a_2b_1W + a_3b_1Z + a_4b_1XW + a_5b_1XZ + b_2W + b_3Z + a_0b_4W + a_1b_4XW + a_2b_4WW + a_3b_4ZW + a_4b_4XWW + a_5b_4XZW + a_0b_5Z + a_1b_5XZ + a_2b_5WZ + a_3b_5ZZ + a_4b_5XWZ + a_5b_5XZZ + c'X
整理为 Y = a + bX 的形式:
Y = (b_0 + a_0b_1 + a_2b_1W + a_3b_1Z + b_2W + b_3Z + a_0b_4W + a_2b_4WW + a_3b_4ZW + a_0b_5Z + a_2b_5WZ + a_3b_5ZZ) + (a_1b_1 + a_4b_1W + a_5b_1Z + a_1b_4W + a_4b_4WW + a_5b_4ZW + a_1b_5Z + a_4b_5WZ + a_5b_5ZZ + c')X
提取间接效应和直接效应:
条件间接效应: (a_1 + a_4W + a_5Z)(b_1 + b_4W + b_5Z)
直接效应: c'
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
MODEL CONSTRAINT:
NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z
ILOW_LOZ IMEW_LOZ IHIW_LOZ ILOW_MEZ IMEW_MEZ IHIW_MEZ
ILOW_HIZ IMEW_HIZ IHIW_HIZ
TLOW_LOZ TMEW_LOZ THIW_LOZ TLOW_MEZ TMEW_MEZ THIW_MEZ
TLOW_HIZ TMEW_HIZ THIW_HIZ);
LOW_W = #LOWW;
MED_W = #MEDW;
HIGH_W = #HIGHW;
LOW_Z = #LOWZ;
MED_Z = #MEDZ;
HIGH_Z = #HIGHZ;
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
MODEL CONSTRAINT:
NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z
ILOW_LOZ IMEW_LOZ IHIW_LOZ ILOW_MEZ IMEW_MEZ IHIW_MEZ
ILOW_HIZ IMEW_HIZ IHIW_HIZ
TLOW_LOZ TMEW_LOZ THIW_LOZ TLOW_MEZ TMEW_MEZ THIW_MEZ
TLOW_HIZ TMEW_HIZ THIW_HIZ);
LOW_W = #LOWW;
MED_W = #MEDW;
HIGH_W = #HIGHW;
LOW_Z = #LOWZ;
MED_Z = #MEDZ;
HIGH_Z = #HIGHZ;
ILOW_LOZ = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a1*b4*LOW_W +
a4*b4*LOW_W*LOW_W + a5*b4*LOW_Z*LOW_W + a1*b5*LOW_Z +
a4*b5*LOW_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IMEW_LOZ = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a1*b4*MED_W +
a4*b4*MED_W*MED_W + a5*b4*LOW_Z*MED_W + a1*b5*LOW_Z +
a4*b5*MED_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IHIW_LOZ = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*LOW_Z*HIGH_W + a1*b5*LOW_Z +
a4*b5*HIGH_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
...
IHIW_HIZ = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*HIGH_Z*HIGH_W + a1*b5*HIGH_Z +
a4*b5*HIGH_W*HIGH_Z + a5*b5*HIGH_Z*HIGH_Z;
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
MODEL CONSTRAINT:
NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z
ILOW_LOZ IMEW_LOZ IHIW_LOZ ILOW_MEZ IMEW_MEZ IHIW_MEZ
ILOW_HIZ IMEW_HIZ IHIW_HIZ
TLOW_LOZ TMEW_LOZ THIW_LOZ TLOW_MEZ TMEW_MEZ THIW_MEZ
TLOW_HIZ TMEW_HIZ THIW_HIZ);
LOW_W = #LOWW;
MED_W = #MEDW;
HIGH_W = #HIGHW;
LOW_Z = #LOWZ;
MED_Z = #MEDZ;
HIGH_Z = #HIGHZ;
ILOW_LOZ = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a1*b4*LOW_W +
a4*b4*LOW_W*LOW_W + a5*b4*LOW_Z*LOW_W + a1*b5*LOW_Z +
a4*b5*LOW_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IMEW_LOZ = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a1*b4*MED_W +
a4*b4*MED_W*MED_W + a5*b4*LOW_Z*MED_W + a1*b5*LOW_Z +
a4*b5*MED_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IHIW_LOZ = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*LOW_Z*HIGH_W + a1*b5*LOW_Z +
a4*b5*HIGH_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
...
IHIW_HIZ = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*HIGH_Z*HIGH_W + a1*b5*HIGH_Z +
a4*b5*HIGH_W*HIGH_Z + a5*b5*HIGH_Z*HIGH_Z;
TLOW_LOZ = ILOW_LOZ + cdash;
TMEW_LOZ = IMEW_LOZ + cdash;
THIW_LOZ = IHIW_LOZ + cdash;
...
THIW_HIZ = IHIW_HIZ + cdash;
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
MODEL CONSTRAINT:
NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z
ILOW_LOZ IMEW_LOZ IHIW_LOZ ILOW_MEZ IMEW_MEZ IHIW_MEZ
ILOW_HIZ IMEW_HIZ IHIW_HIZ
TLOW_LOZ TMEW_LOZ THIW_LOZ TLOW_MEZ TMEW_MEZ THIW_MEZ
TLOW_HIZ TMEW_HIZ THIW_HIZ);
LOW_W = #LOWW;
MED_W = #MEDW;
HIGH_W = #HIGHW;
LOW_Z = #LOWZ;
MED_Z = #MEDZ;
HIGH_Z = #HIGHZ;
ILOW_LOZ = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a1*b4*LOW_W +
a4*b4*LOW_W*LOW_W + a5*b4*LOW_Z*LOW_W + a1*b5*LOW_Z +
a4*b5*LOW_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IMEW_LOZ = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a1*b4*MED_W +
a4*b4*MED_W*MED_W + a5*b4*LOW_Z*MED_W + a1*b5*LOW_Z +
a4*b5*MED_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IHIW_LOZ = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*LOW_Z*HIGH_W + a1*b5*LOW_Z +
a4*b5*HIGH_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
...
IHIW_HIZ = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*HIGH_Z*HIGH_W + a1*b5*HIGH_Z +
a4*b5*HIGH_W*HIGH_Z + a5*b5*HIGH_Z*HIGH_Z;
TLOW_LOZ = ILOW_LOZ + cdash;
TMEW_LOZ = IMEW_LOZ + cdash;
THIW_LOZ = IHIW_LOZ + cdash;
...
THIW_HIZ = IHIW_HIZ + cdash;
PLOT(PLOW_LOZ PMEW_LOZ PHIW_LOZ PLOW_MEZ PMEW_MEZ PHIW_MEZ
PLOW_HIZ PMEW_HIZ PHIW_HIZ);
LOOP(XVAL,1,5,0.1);
PLOW_LOZ = ILOW_LOZ*XVAL;
PMEW_LOZ = IMEW_LOZ*XVAL;
PHIW_LOZ = IHIW_LOZ*XVAL;
...
PHIW_HIZ = IHIW_HIZ*XVAL;
! Predictor variable - X
! Mediator variable(s) – M
! Moderator variable(s) – W, Z
! Outcome variable - Y
USEVARIABLES = X M W Z Y XW XZ MW MZ;
DEFINE:
MW = M*W;
MZ = M*Z;
XW = X*W;
XZ = X*Z;
ANALYSIS:
TYPE = GENERAL;
ESTIMATOR = ML;
BOOTSTRAP = 10000;
MODEL:
[Y] (b0);
Y ON M (b1);
Y ON W (b2);
Y ON Z (b3);
Y ON MW (b4);
Y ON MZ (b5);
Y ON X(cdash);
[M] (a0);
M ON X (a1);
M ON W (a2);
M ON Z (a3);
M ON XW (a4);
M ON XZ (a5);
MODEL CONSTRAINT:
NEW(LOW_W MED_W HIGH_W LOW_Z MED_Z HIGH_Z
ILOW_LOZ IMEW_LOZ IHIW_LOZ ILOW_MEZ IMEW_MEZ IHIW_MEZ
ILOW_HIZ IMEW_HIZ IHIW_HIZ
TLOW_LOZ TMEW_LOZ THIW_LOZ TLOW_MEZ TMEW_MEZ THIW_MEZ
TLOW_HIZ TMEW_HIZ THIW_HIZ);
LOW_W = #LOWW;
MED_W = #MEDW;
HIGH_W = #HIGHW;
LOW_Z = #LOWZ;
MED_Z = #MEDZ;
HIGH_Z = #HIGHZ;
ILOW_LOZ = a1*b1 + a4*b1*LOW_W + a5*b1*LOW_Z + a1*b4*LOW_W +
a4*b4*LOW_W*LOW_W + a5*b4*LOW_Z*LOW_W + a1*b5*LOW_Z +
a4*b5*LOW_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IMEW_LOZ = a1*b1 + a4*b1*MED_W + a5*b1*LOW_Z + a1*b4*MED_W +
a4*b4*MED_W*MED_W + a5*b4*LOW_Z*MED_W + a1*b5*LOW_Z +
a4*b5*MED_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
IHIW_LOZ = a1*b1 + a4*b1*HIGH_W + a5*b1*LOW_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*LOW_Z*HIGH_W + a1*b5*LOW_Z +
a4*b5*HIGH_W*LOW_Z + a5*b5*LOW_Z*LOW_Z;
...
IHIW_HIZ = a1*b1 + a4*b1*HIGH_W + a5*b1*HIGH_Z + a1*b4*HIGH_W +
a4*b4*HIGH_W*HIGH_W + a5*b4*HIGH_Z*HIGH_W + a1*b5*HIGH_Z +
a4*b5*HIGH_W*HIGH_Z + a5*b5*HIGH_Z*HIGH_Z;
TLOW_LOZ = ILOW_LOZ + cdash;
TMEW_LOZ = IMEW_LOZ + cdash;
THIW_LOZ = IHIW_LOZ + cdash;
...
THIW_HIZ = IHIW_HIZ + cdash;
PLOT(PLOW_LOZ PMEW_LOZ PHIW_LOZ PLOW_MEZ PMEW_MEZ PHIW_MEZ
PLOW_HIZ PMEW_HIZ PHIW_HIZ);
LOOP(XVAL,1,5,0.1);
PLOW_LOZ = ILOW_LOZ*XVAL;
PMEW_LOZ = IMEW_LOZ*XVAL;
PHIW_LOZ = IHIW_LOZ*XVAL;
...
PHIW_HIZ = IHIW_HIZ*XVAL;
PLOT:
TYPE = plot2;
OUTPUT:
STAND CINT(bcbootstrap);