現在、2 つのデータ テーブルがあり、そのうちの 1 つは列に独立変数と制御変数を含み、もう 1 つは従属変数の行を含みます。
従属値テーブルの行ごとに繰り返される 2 つのテーブルから線形モデルを実行する方法の作成を手伝ってくれる人はいますか?
現在、2 つのデータ テーブルがあり、そのうちの 1 つは列に独立変数と制御変数を含み、もう 1 つは従属変数の行を含みます。
従属値テーブルの行ごとに繰り返される 2 つのテーブルから線形モデルを実行する方法の作成を手伝ってくれる人はいますか?
あなたは再現可能な例も望ましい出力も提供していないので、推測する必要があります
これが列名ベクトルの場合
vec <- LETTERS[1:3]
これがあなたのデータセットです
set.seed(1)
df <- data.frame(A = sample(10, 10),
B = sample(20, 10),
C = sample(30, 10))
次に、次のようなものを試すことができます
lapply(vec,
function(x) lm(as.formula(paste(x, "~",
paste(setdiff(names(df), x),
collapse = "+"))),
data = df))
どちらが与えるでしょう
# [[1]]
#
# Call:
# lm(formula = as.formula(paste(x, "~", paste(setdiff(names(df),
# x), collapse = "+"))), data = df)
#
# Coefficients:
# (Intercept) B C
# 4.9687 0.2410 -0.1565
#
#
# [[2]]
#
# Call:
# lm(formula = as.formula(paste(x, "~", paste(setdiff(names(df),
# x), collapse = "+"))), data = df)
#
# Coefficients:
# (Intercept) A C
# 2.7975 0.8182 0.2775
#
#
# [[3]]
#
# Call:
# lm(formula = as.formula(paste(x, "~", paste(setdiff(names(df),
# x), collapse = "+"))), data = df)
#
# Coefficients:
# (Intercept) A B
# 13.200 -1.675 0.875