回答:
はい、可能です。興味のあることは、「多変量重回帰」または単に「多変量回帰」と呼ばれます。使用しているソフトウェアはわかりませんが、これはRで実行できます。
ここに例を提供するリンクがあります。
http://www.public.iastate.edu/~maitra/stat501/lectures/MultivariateRegression.pdf
@Brettの応答は問題ありません。
2ブロック構造の記述に興味がある場合は、PLS回帰も使用できます。基本的に、それは、共分散が最大になるように、各ブロックに属する変数の連続的な(直交する)線形結合を構築するという考え方に依存する回帰フレームワークです。ここでは、以下に示すように、1つのブロックは説明変数が含まれ、他のブロックYには応答変数が含まれると考えます。
ブロックに含まれる最大の情報を(線形に)説明する一方で、最小のエラーでYブロックを予測できる「潜在変数」を探します。UのJおよびVのjは各次元に関連する負荷(すなわち、線形結合)です。最適化基準の読み取り
ここで、は、回帰後の収縮(つまり、残差)ブロックを表し。h th
最初の次元(および)の階乗スコア間の相関は、 -リンクの大きさを反映しています。ω 1 X Y
多変量回帰は、GLS多変量オプションを使用してSPSSで実行されます。
すべての結果(DV)を結果ボックスに入れますが、連続予測変数はすべて共変量ボックスに入れます。ファクターボックスには何も必要ありません。多変量テストを見てください。単変量テストは、個別の重回帰と同じです。
他の誰かが言ったように、これを構造方程式モデルとして指定することもできますが、テストは同じです。
(興味深いことに、これは興味深いと思いますが、これには英国と米国の違いが少しあります。英国では、通常、多重回帰は多変量手法とは見なされません。 )
これを行うには、まず回帰変数をPCA計算変数に変換し、次にPCA計算変数を使用して回帰します。もちろん、分類したい新しいインスタンスがあるときに、対応するpca値を計算できるように固有ベクトルを保存します。
caracalで述べたように、Rでmvtnormパッケージを使用できます。モデル内の応答の1つのlmモデル(「model」という名前)を作成し、「model」と呼ぶと仮定して、多変量予測分布を取得する方法を次に示します。行列形式Yに格納されたいくつかの応答「resp1」、「resp2」、「resp3」の例:
library(mvtnorm)
model = lm(resp1~1+x+x1+x2,datas) #this is only a fake model to get
#the X matrix out of it
Y = as.matrix(datas[,c("resp1","resp2","resp3")])
X = model.matrix(delete.response(terms(model)),
data, model$contrasts)
XprimeX = t(X) %*% X
XprimeXinv = solve(xprimex)
hatB = xprimexinv %*% t(X) %*% Y
A = t(Y - X%*%hatB)%*% (Y-X%*%hatB)
F = ncol(X)
M = ncol(Y)
N = nrow(Y)
nu= N-(M+F)+1 #nu must be positive
C_1 = c(1 + x0 %*% xprimexinv %*% t(x0)) #for a prediction of the factor setting x0 (a vector of size F=ncol(X))
varY = A/(nu)
postmean = x0 %*% hatB
nsim = 2000
ysim = rmvt(n=nsim,delta=postmux0,C_1*varY,df=nu)
現在、ysimの分位数は予測分布からのベータ期待値の許容範囲です。もちろん、サンプリングされた分布を直接使用して、必要な処理を実行できます。
アンドリューFに答えると、自由度はnu = N-(M + F)+1 ...です。Nは観測数、Mは応答数、Fは方程式モデルごとのパラメーター数です。nuは正でなければなりません。
(このドキュメントの私の研究を読みたいかもしれません:-))
「正準相関」という用語に出くわしましたか?独立側と従属側に変数のセットがあります。しかし、もっと現代的な概念が利用できるかもしれません。私が持っている説明は80年代/ 90年代のすべてです...
構造方程式モデルまたは連立方程式モデルと呼ばれます。