Respostas:
Sim, é possível. O que você está interessado é chamado "Regressão múltipla multivariada" ou apenas "Regressão multivariada". Não sei qual software você está usando, mas você pode fazer isso em R.
Aqui está um link que fornece exemplos.
http://www.public.iastate.edu/~maitra/stat501/lectures/MultivariateRegression.pdf
A resposta de @ Brett está bem.
Se você estiver interessado em descrever sua estrutura de dois blocos, também poderá usar a regressão PLS . Basicamente, é uma estrutura de regressão que se baseia na ideia de construir sucessivas combinações lineares (ortogonais) das variáveis pertencentes a cada bloco, de modo que sua covariância seja máxima. Aqui, consideramos que um bloco contém variáveis explicativas e o outro bloco Y responde variáveis, como mostrado abaixo:
Procuramos "variáveis latentes" que sejam responsáveis por um máximo de informações (de maneira linear) incluídas no bloco , permitindo prever o bloco Y com um erro mínimo. O u j e v j são as cargas (isto é, combinações lineares) associados a cada dimensão. O critério de otimização lê
onde representa o bloco desinflado (isto é, residualizado) , após a regressão . X h th
A correlação entre as pontuações fatoriais na primeira dimensão ( e ) reflete a magnitude do link -ω 1 X Y
A regressão multivariada é feita no SPSS usando a opção multivariada GLM.
Coloque todos os seus resultados (DVs) na caixa de resultados, mas todos os seus preditores contínuos na caixa de covariáveis. Você não precisa de nada na caixa de fatores. Veja os testes multivariados. Os testes univariados serão os mesmos que as regressões múltiplas separadas.
Como alguém disse, você também pode especificar isso como um modelo de equação estrutural, mas os testes são os mesmos.
(Curiosamente, bem, acho que é interessante, há um pouco de diferença entre o Reino Unido e os EUA. No Reino Unido, a regressão múltipla geralmente não é considerada uma técnica multivariada, portanto, a regressão multivariada só é multivariada quando você tem vários resultados / DVs. )
Eu faria isso transformando primeiro as variáveis de regressão em variáveis calculadas pelo PCA e, em seguida, faria a regressão com as variáveis calculadas pelo PCA. É claro que eu armazenaria os vetores próprios para poder calcular os valores correspondentes de pca quando tiver uma nova instância que queira classificar.
Como mencionado por caracal, você pode usar o pacote mvtnorm em R. Supondo que você tenha criado um modelo lm (chamado "modelo") de uma das respostas em seu modelo e chamado de "modelo", aqui está como obter a distribuição preditiva multivariada de várias respostas "resp1", "resp2", "resp3" armazenadas em uma matriz Y:
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)
Agora, quantis de ysim são intervalos de tolerância de expectativa beta da distribuição preditiva, é claro que você pode usar diretamente a distribuição amostrada para fazer o que quiser.
Para responder a Andrew F., os graus de liberdade são, portanto, nu = N- (M + F) +1 ... N sendo o número de observações, M o número de respostas e F o número de parâmetros por modelo de equação. nu deve ser positivo.
(Você pode ler meu trabalho neste documento :-))
Você já se deparou com o termo "correlação canônica"? Lá você tem conjuntos de variáveis no lado independente e no lado dependente. Mas talvez haja conceitos mais modernos disponíveis, as descrições que tenho são dos anos oitenta / noventa ...
É chamado modelo de equação estrutural ou modelo de equação simultânea.