mediate パッケージを使用して、R でメディエーション分析を実行しようとしています。これを行う方法に関するドキュメントを見て、R が提供する例を読みました (つまり、既に "example(mediate)" を実行しました)。それにもかかわらず、最も単純なメディエーションを実行することはできません。理想的には、Preacher & Hayes (2004) のようなブートストラップ手順を実行したいと考えています。
実行しようとしているコードは次のとおりです。
model.m <- lm(desirdata1$zpers1 ~ desirdata1$zdesir1 + desirdata1$age)
model.y <- lm(desirdata1$zpers1 ~ desirdata1$age)
age1test <- mediate(model.m, model.y,treat="age", mediator="zdesir1",
boot=TRUE, sims=50)
desirdata
データセットは、治療はage
、結果はzpers1
、メディエータは "zdesir1" と呼ばれることに注意してください。これを実行すると、次のエラーが表示されます。
Error in `[.data.frame`(m.data, , treat) : undefined columns selected
変数(具体的には治療変数)が存在しないと主張しているようです。ただし、names(desirdata) を実行すると、変数が存在し、他のすべての変数と同様に正しく名前が付けられていることが示されます。最初の 2 つのモデル (model.m と model.y) は正常に実行され、出力は期待どおりに見えます。実行できないのは仲介モデルだけです。私が知る限り、タイプミスはしておらず、これを 100 回チェックしました。
考え?