Multiple Linear Regression using "REGRESS"
Mostra commenti meno recenti
Hello
I am using regress function for multiple linear regression analysis. Once I obtain the values of coefficients, I substitute in the equtation to get the new / predicted values of y.
Then I make the scatterplot of y_original and y_predicted. How can I show the regression line for equation y = ax1 + bx2 + cx3 + d on this scatter plot ? What code should I write for this problem ?
Secondly, How can I find the random error for this multiple linear regression relationship ?
1 Commento
Priya
il 13 Ott 2013
Risposte (2)
dpb
il 5 Ott 2013
0 voti
s=sprintf('y = %.2f*ax1 + %.2f*x2 + %.2f*x3 + %.2f', b); text(x,y,s)
b is the coefficient matrix from regress; x, y are the coordinates of location where you wish to write the equation in the units of the x- and y-axes used for scatter
7 Commenti
Priya
il 5 Ott 2013
dpb
il 6 Ott 2013
Just evaluate equation at a set of coordinates. Since it's linear in x1 or x2, depending on the axis against which you're plotting it, it only takes to points to define the line for a give value of the other variable.
Marc
il 6 Ott 2013
Maybe I am missing something but from what you are asking, you can not. If your plot is yPredicted vs yActual, your best fit would be a line of yActual and yActual with yPedicted at yActual being your scatter points.
Otherwise, your yPredicted is a surface at a given x1 or x2 or x3.
Priya
il 6 Ott 2013
Image Analyst
il 6 Ott 2013
I'm with Marc. Let's say that x1, x2, and x3 were x, y, and z and you had samples of the temperature in the room. So at any point in 3 dimensional space you have a estimated temperature, and at some of the locations you have training data (temperatures). The y value is just a different value. If you pin down one of the coordinates, then you can plot a surface with estimated and actual y. If you pin down 2 two of the coordinates, then you can plot a curve like you're probably thinking of. But it would take you fixing two of the values. So you can get a curve of y vs. x1 for fixed x2 and x3. It would look different for different x2 and x3. I think this is your scenario 1. Of course you can do your scenario 2 (scatter y training vs. y predicted) but only for the training data , not for all x1, x2, and x3.
Priya
il 13 Ott 2013
Priya
il 15 Ott 2013
Priya
il 13 Ott 2013
0 voti
5 Commenti
dpb
il 13 Ott 2013
How would you propose to show 4D in a 3D world?
doc isosurface
might be of some use in allowing you to pull and show surfaces of response with two variables at a third fixed...
Interpretation of residuals and or errors in RSM is dependent upon the underlying data error structure -- and whether on considers error in the independent variables or only in the measured responses (the latter far more commonly done).
Again, see Draper and Smith text referenced earlier or other texts on regression analysis for the details; this isn't a Matlab question and being so general is OT for the Answers forum.
dpb
il 15 Ott 2013
It's got the same problem as the raw data -- there are three independent variables plus the response to show....a scatter plot can only show two of them.
Priya
il 15 Ott 2013
Oh, misinterpreted the question or the intended use of "line" -- that there's no line on the plot by your above command is because that's what you told it to do...
plot(y_predicted,y_original,'o')
says use the 'o' marker; you didn't specify a line style so Matlab obeyed and didn't, either. Use
plot(y_predicted,y_original,'o-')
or alternate linestyle of choice.
doc plot % documents above behavior and marker/linestyle choices
Categorie
Scopri di più su Scatter Plots in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!