Estou usando regressão linear múltipla para descrever as relações entre Y e X1, X2.
Pela teoria, entendi que a regressão múltipla assume relações lineares entre Y e cada um de X (Y e X1, Y e X2). Não estou usando nenhuma transformação do X.
Então, eu peguei o modelo com R = 0,45 e todos os X significativos (P <0,05). Então plotei Y contra X1. Não entendo por que os círculos de cor vermelha que são previsões do modelo não formam uma linha. Como eu disse antes, esperava que cada par de Y e X fosse ajustado por uma linha.
O gráfico é gerado em python da seguinte maneira:
fig, ax = plt.subplots()
plt.plot(x['var1'], ypred, 'o', validation['var1'], validation['y'], 'ro');
ax.set_title('blue: true, red: OLS')
ax.set_xlabel('X')
ax.set_ylabel('Y')
plt.show()
regression
multiple-regression
python
linear
Klausos
fonte
fonte
Respostas:
Suponha que sua equação de regressão múltipla seja
onde Y significa "previu y ".y^ y
Agora pegue apenas os pontos para os quais . Então, se você traçar y contra x 1 , estes pontos irá satisfazer a equação:x2=1 y^ x1
Portanto, eles devem estar em uma linha da inclinação 2 e com o intercepto em 8.y
Agora pegue os pontos para os quais . Quando você plotar y contra x 1 , então estes pontos satisfazer:x2=2 y^ x1
Portanto, essa é uma linha da inclinação 2 e com o intercepto em 13. Você pode verificar por si mesmo que se x 2 = 3 , obtém outra linha da inclinação 2 e o intercepto em y é 18.y x2=3 y
Vemos que pontos com valores diferentes de estão em linhas diferentes, mas todos com o mesmo gradiente: o significado do coeficiente de 2 x 1 na equação de regressão original é que, ceteris paribus ou seja, mantendo outros preditores constantes, um aumento de uma unidade na x 1 aumenta a resposta média previsível y por duas unidades, enquanto o significado da intercepção de 3 na equação de regressão foi de que, quando X 1 = 0 e x 2 = 0 , em seguida, a resposta média previsto tem trêsx2 2x1 x1 y^ 3 x1=0 x2=0 3 . Mas nem todos os seus pontos têm o mesmo , o que significa que eles estão em linhas com uma interceptação diferente - a linha só teria intercepto 3 para os pontos para os quais x 2 = 0 . Então, ao invés de ver uma única linha, você pode ver (se houver apenas certos valores de x 2 que ocorrem, por exemplo, se x 2 é sempre inteiro) uma série de "faixas" diagonais. Considere os seguintes dados, onde y = 2 x 1 + 5 x 2 + 3 .x2 3 x2=0 x2 x2 y^=2x1+5x2+3
Código para gráficos R
fonte