3

初歩的な質問で申し訳ありませんが、明らかな何かが欠けているに違いありません。

lmオブジェクトのリストを作成したいと考えていllplyます。このリストを呼び出しで使用して、このリストに対してメディエーション分析を実行します。しかし、これは重要ではありません。最初に、長さ m (m はモデルのセット) のリストを作成したいだけで、m 内の各要素自体に n 個lmのオブジェクトが含まれます。

したがって、この単純な例では

d1 <- data.frame(x1 = runif(100, 0, 1),
             x2 = runif(100, 0, 1),
             x3 = runif(100, 0, 1),
             y1 = runif(100, 0, 1),
             y2 = runif(100, 0, 1),
             y3 = runif(100, 0, 1))

m1 <- lm(y1 ~ x1 + x2 + x3, data = d1)
m2 <- lm(x1 ~ x2 + x3, data = d1)
m3 <- lm(y2 ~ x1 + x2 + x3, data = d1)
m4 <- lm(x2 ~ x1 + x3, data = d1)
m5 <- lm(y3 ~ y1 + y2 + x3, data = d1)
m6 <- lm(x3 ~ x1 + x2, data = d1)

3 つの要素を含むリストが必要です。最初の要素には and が含まれm1m22 番目の要素にはm3andm4などが含まれます。最初の試みは正しいのですが、lmm オブジェクトはクラスを保持しません。

mlist <- list(c(m1,m2),
              c(m3,m4),
              c(m5,m6))

それは正しい長さ(つまり3に等しい)ですが、オブジェクト自体にlength(mlist)アクセスできると思いましたlm

class(mlist[1][[1]])

しかし、この要素は明らかにリストです。

最初のステップでリストを作成する方法を台無しにしていますか、それとも lm オブジェクトに関してもっと基本的なことですか?

4

1 に答える 1