Моделювання даних для відповідності моделі посередництва


9

Мені цікаво знайти процедуру моделювання даних, що відповідають заданій моделі посередництва. Відповідно до загальної структури лінійних структурних рівнянь для тестування моделей посередництва, вперше викладених Барроном та Кенні (1986) та описаних у інших місцях, таких як Judd, Yzerbyt, & Muller (2013) , моделі посередництва для результатівY, посередник , і предиктор , керуються такими трьома рівняннями регресії: Непрямий ефект або посередницький ефект на Y через \ med може бути визначений як b_ {22} b_ {32}, або, що рівнозначно, як b_ {12} -b_ {32 } . За старими рамками тестування на медіацію медіацію встановлювали шляхом тестування b_ {12} у рівнянні 1, b_ {22}medX

(1)Y=b11+b12X+e1(2)med=b21+b22X+e2(3)Y=b31+b32X+b32med+e3
XYmedb22b32b12b32b12b22у рівнянні 2, а b32 у рівнянні 3.

До сих пір я намагався імітувати значення med і Y , які узгоджуються зі значеннями різних коефіцієнтів регресії з використанням rnormв R, наприклад, код нижче:

x   <- rep(c(-.5, .5), 50)
med <- 4 + .7 * x + rnorm(100, sd = 1) 

# Check the relationship between x and med
mod <- lm(med ~ x)
summary(mod)

y <- 2.5 + 0 * x + .4 * med + rnorm(100, sd = 1)

# Check the relationships between x, med, and y
mod <- lm(y ~ x + med)
summary(mod)

# Check the relationship between x and y -- not present
mod <- lm(y ~ x)
summary(mod)

Тим НЕ менше, здається , що виробляє послідовно і з допомогою рівнянь 2 і 3 мало, так як я залишився без яких - або відносин між і в рівнянні регресії 1 (яка моделює прості двовимірний відносини між і ) , використовуючи цей підхід . Це важливо, оскільки одне визначення непрямого (тобто посередницького) ефекту - , як я описав вище.medYXYXYb12b32

Чи може хто-небудь допомогти мені знайти процедуру в R для генерації змінних , і які задовольняють обмеження, які я встановлюю, використовуючи рівняння 1, 2 і 3?XmedY

Відповіді:


4

Це досить прямо. Причина у вас немає зв’язку між та використовуючи ваш підхід, через код: xy

y <- 2.5 + 0 * x + .4 * med + rnorm(100, sd = 1)

Якщо ви хочете мати деяку залежність між і навіть якщо включений (тобто ви хочете часткове посередництво), ви просто використовуєте не-нульове значення для . Наприклад, ви можете замінити наступний код вищезазначеним: xymedb32

y <- 2.5 + 3 * x + .4 * med + rnorm(100, sd = 1)

Таким чином, змінено з на . (Звичайно, якесь інше, конкретне значення, ймовірно, було б більш доречним, залежно від вашої ситуації, я щойно вибрав у верхній частині голови.) b32033


Редагувати:
Що стосується граничного співвідношення яке є незначним, це лише функція статистичної влади . Оскільки причинна сила передається повністю через у вашій початковій установці, ви маєте меншу потужність, ніж могли б інакше. Тим не менш, ефект все-таки реальний у певному сенсі. Коли я запустив ваш оригінальний код (після того, як встановив насіння, використовуючи як значення, яке я знову просто відібрав у верхній частині голови), я отримав значний ефект: xyxmed90

set.seed(90)
x <- rep(c(-.5, .5), 50)
med <- 4 + .7 * x + rnorm(100, sd = 1) 

# Check the relationship between x and med
mod <- lm(med ~ x)
summary(mod)

y <- 2.5 + 0 * x + .4 * med + rnorm(100, sd = 1)

# Check the relationships between x, med, and y
mod <- lm(y ~ x + med)
summary(mod)

# Check the relationship between x and y -- not present
mod <- lm(y ~ x)
summary(mod)

...
Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   3.8491     0.1151  33.431   <2e-16 ***
x             0.5315     0.2303   2.308   0.0231 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

...

Щоб отримати більше енергії, ви можете збільшити ви використовуєте, або використовувати менші значення помилок (тобто використовувати значення, менші за замовчуванням у викликах). Nsd=1rnorm()


Гунг, дякую за вашу відповідь. Я думаю, моє запитання може бути дещо неоднозначним. Те, що я хочу, - це не співвідношення між x і y в моделі 3 (це те, що ви зробили), а в моделі 1 (Y = b11 + b12 * X + e1). Я уточнив своє питання до цього.
Патрік С. Форшер

Дякуємо за редагування Чи можна безпосередньо вказати розмір ефекту сукупності для коефіцієнта b12?
Патрік С. Форшер

Ваше питання на даний момент - що було б: яке співвідношення чисельності населення між & взагалі. Мені цікаво, чи можна це найкраще задати як нове запитання, оскільки я не впевнений у верхній частині голови. У найпростішому випадку, коли всі 3 змінні ( , , ) , як правило , розподілені, і співвідношенням б / т & буде повністю опосередковане, то . Однак, це складніше, якщо розподіли не є нормальними (наприклад, ваш дорівнює частоти & ) або ж / більш складні ситуації.хухмегухуρх,у=ρх,мегρмег,ух-.5+.5
gung - Відновіть Моніку

0

Ось стаття про те, як моделювати просте посередництво у Caron & Valois (2018) : Там код R є

  x <- rnorm(n)
  em <- sqrt(1-a^2)
  m <- a*x + em*rnorm(n)
  ey2 <- sqrt(ey)
  y <- cp*x + b*m + ey2*rnorm(n)
  data <- as.data.frame(cbind(x, m, y))

Вам просто потрібно вказати (розмір вибірки), , і (прямий ефект). Перевага тут полягає в тому, що ви будете моделювати стандартизовані коефіцієнти, щоб ви знали їх розміри ефектів. Вони також включали код для нестандартного розміру, перенесення завантажувальних приладів Baron & Kenny, Sobel і Bca.набc'

Список літератури

Caron, P.-O., & Valois, P. (2018). Обчислювальний опис простого медіа-аналізу. Кількісні методи психології, 14, 147-158. doi: 10.20982 / tqmp.14.2.p147

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.