logo
生物科学研究所 井口研究室
Laboratory of Biology, Okaya, Nagano, Japan
Home

調整媒介モデル定義の混乱: HAD, R, SPSS 利用

井口豊(生物科学研究所,長野県岡谷市)
最終更新:2025 年 12 月 14 日

1. はじめに

調整媒介分析モデルの定義やその説明で,統計ソフトによって混乱が見られるので,それを指摘しておきたい。このモデルのマクロは, Andrew F. Hayes による以下のサイトからダウンロードできる。

2. Process model の種類

媒介分析や調整媒介分析プログラムには, Process model として番号が付いている。例えば,統計ソフト Mplus の以下の解説サイトで, Model Index から見ることができる。

例えば, Model 1a は以下のページ。

そのページには,後述するように,概念的ダイアグラム(Mplus では Model Diagram )と統計的ダイアグラム(Mplus では Statistical Diagram )が描かれている。

フリーソフト R の場合,パッケージ processR で以下のように打ち込むと,ブラウザ(Google Chrome など)が立ち上がって見られる。


#####################

library(processR)
showModels()

######################

概念的ダイアグラム(conceptual diagram)と統計的ダイアグラム(statistical diagram)が見られ,次の図 1 は, Model 1 の概念的ダイアグラムをクリックして示した状態である。

Process model 1 概念的ダイアグラム

図 1 Process model 1 概念的ダイアグラム

2. HAD による定義

HAD で調整媒介分析する場合については,清水裕士が以下のサイトで説明している。

後者は,スライド形式でモデルの概念も含めて詳しく説明されている。

それによると,スライド 46 「調整媒介分析」で概念的ダイアグラムが提示されるが,これは Model 58 である(Mplus model 58 参照)。

これに関して,スライド 48 「パス図で書くと・・・」で統計的ダイアグラムが提示されるが,これは Model 59 である(Mplus model 59 参照)。概念的と統計的で,これら異なるダイアグラムの提示は,前述の HAD のマニュアルページ調整媒介分析についてでも同様である。

さらにこれらを,スライド 49 「対応ソフトウェア」で,「PROCESS のモデル 15 に相当する」と書いてあるが,前述のとおり,どちらのダイアグラムも Model 15 ではない。

このときの SPSS の仕様が変更されていたのかと思ったが,スライド 51 「出力」で, SPSS の結果を見ると,確かに Model 15 の出力になっている。

なぜダイアグラムで出力と違うモデルを示したのか,それは不明だが,読者は注意する必要がある。

以下に, Model 15, 58, 59 の概念的および統計的ダイアグラムを, R によって示すので,確認してみよう。


###################################

library(processR)

# Process model 15
par(mfrow = c(1, 2)) 

pmacroModel(15)
mtext(
  text = "Model 15",
  line = 2, cex = 1.3
)
mtext(
  text = "概念的ダイアグラム",
  line = 0.5, cex = 1.3
)

statisticalDiagram(15)
mtext(
  text = "統計的ダイアグラム",
  line = 0.5, cex = 1.3
)

# Process model 58
par(mfrow = c(1, 2)) 

pmacroModel(58)
mtext(
  text = "Model 58",
  line = 2, cex = 1.3
)
mtext(
  text = "概念的ダイアグラム",
  line = 0.5, cex = 1.3
)

statisticalDiagram(58)
mtext(
  text = "統計的ダイアグラム",
  line = 0.5, cex = 1.3
)

# Process model 59
par(mfrow = c(1, 2)) 

pmacroModel(59)
mtext(
  text = "Model 59",
  line = 2, cex = 1.3
)
mtext(
  text = "概念的ダイアグラム",
  line = 0.5, cex = 1.3
)

statisticalDiagram(59)
mtext(
  text = "統計的ダイアグラム",
  line = 0.5, cex = 1.3
)

#######################

結果として Model 15, 58, 59 のダイアグラムは以下の図 2, 3, 4 のように表される。

Process model 15 概念的と統計的ダイアグラム

図 2. Process model 15 概念的と統計的ダイアグラム

Process model 58 概念的と統計的ダイアグラム

図 3. Process model 58 概念的と統計的ダイアグラム

Process model 59 概念的と統計的ダイアグラム

図 4. Process model 59 概念的と統計的ダイアグラム

HAD の出力結果に関しては,スライド 41 「こんな出力が出る」に示されている。それを見ると, Model 59 を出力するようだ。改めて確認してみよう。

まず HAD のサンプルデータをダウンロードして,媒介分析で以下のような変数を入力する。


目的変数: 満足度
モデル: 発話後期 条件
スライス: 集団成績

HAD の入力画面「モデリング」では,以下の図 5 になる。

HAD 調整媒介分析サンプルデータ入力画面

図 5. HAD 調整媒介分析サンプルデータ入力画面

その出力画面「Medi」では,以下の図 6 になる。

HAD 調整媒介分析サンプルデータ出力画面

図 6. HAD 調整媒介分析サンプルデータ出力画面

「媒介変数に対するモデル」と「媒介変数を含めた従属変数に対するモデル」に注目すると,やはり Model 59 の結果を出力している。

統計ソフト R でパッケージ bruceR を利用して,このサンプルデータに Model 59 を適用するには,以下のようなスクリプトになる。ブートストラップ回数は便宜上少なくしてある。


#####################

library(bruceR)
# 関数の dat は
# HAD サンプルデータのデータフレーム

PROCESS(
   dat,
   y = "満足度",
   x = "条件",
   meds = "発話後期",
   mods = "集団成績", 
   mod.path = "all",
   ci = "boot",
   nsim = 100,
   seed = 123
)

######################

計算結果が長いので,一部分だけ取り出すが,まず最初に, Model 59 に投入された変数が表示される。

HAD データに bruceR Model 59 適用

図 7. HAD サンプルデータに bruceR の Model 59 適用

次いで,係数などの統計情報の要約が表示される。

HAD データに bruceR Model 59 計算結果

図 8. HAD サンプルデータに bruceR の Model 59 適用した結果

この中の (2) 発話後期 および (3) 満足度 の説明変数(左端の列)およびその数値を見れば,前述の HAD の出力と同じ構成要素であり,やはり Model 59 を表すことがわかる。

HAD の概念的ダイアグラムで,なぜ Model 58 を取り上げたのか, SPSS で,なぜ Model 15 を計算したのか,理由は不明だが,初学者にしてみれば,一貫して Model 59 で計算し,説明したほうが良かったと思う。

3. R パッケージ bruceR による定義

既に取り上げてきたパッケージ bruceR による調整媒介効果の定義にも混乱がある。正確に言えば,敢えて SPSS と同じ概念的ダイアグラムに,異なる計算を適用しているモデルが複数ある。

この問題に対しては,パッケージ製作者 Bao の解説がある。

Bao, H. W. S.(2021)
bruceR 'PROCESS()' Function and SPSS 'PROCESS' Macro

例えば Model 7 を取り上げると, SPSS の定義に基づく概念的および 統計的ダイアグラムは,前述同様に,以下のように R で示される。


###################################
library(processR)

# Process model 7
par(mfrow = c(1, 2)) 

pmacroModel(7)
mtext(
  text = "Model 7",
  line = 2, cex = 1.3
)
mtext(
  text = "概念的ダイアグラム",
  line = 0.5, cex = 1.3
)

statisticalDiagram(7)
mtext(
  text = "統計的ダイアグラム",
  line = 0.5, cex = 1.3
)

#######################

すなわち,以下の図 9 のように表される。

Process model 7 概念的と統計的ダイアグラム

図 9. Process model 7 概念的と統計的ダイアグラム

これに対して,前述の bruceR の定義解説書では, Model 7 の定義式(formula)を以下のように示している。


# Model 7
M ~ X*W
Y ~ X + M + W

すなわち,以下の図 10 のように表される。

bruceR model 7 統計的ダイアグラム

図 10. bruceR model 7 統計的ダイアグラム

すなわち,独立変数 X が媒介変数 M に与える効果を調整する変数 W は,従属変数 Y にも直接的に影響する(赤いパスが示す効果),と考えるモデルである。 SPSS の Model 7 のように, W は Y に直接影響しないと仮定するモデルよりも, R によるこの Model 7 のほうが,私としては自然な感じがする。

これに関しては, bruceR の定義解説書 p.3 の表の下に,次のような注釈 Note がある。

The red part in R formula ("+ W", "+ W1 + W2") are moderator(s) controlled as covariates in the models, which differs from the official PROCESS but is more rigorous and rational.

ただし,これを Model 7 とせずに, minor change version で, Model 7.1 などと表記したほうが良かったと思う。

いずれにしても, Model 7 のような比較的単純な調整媒介効果モデルであっても,そのパス設定は一意的に決まらず,複数の考え方があるので,注意する必要がある。

Home