Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Is it possible to do multiple linear regression with constaint?

Asked by Simon on 30 May 2013

Hi, i'm trying to delete coefficients if they fail the t-test and if the Rsquared is 0,5. The only problem is that i don't know how!! I'm using LinearModel.fit because i need to keep an eye on the coefficient names (im using datasets). Thank you in advance!

3 Comments

José-Luis on 30 May 2013

What have you tried so far? What problems have you encountered in your implementation?

Simon on 30 May 2013

The problem so far is that I looped a LinearModel function using .coefficient only (from a dataset)so that i can track the coefficient names after i put the constraints. I'm trying to remove an answer if Rsquared if lower than 0,5 and if tstats are -1,96 < 0 < 1,96. It seems easy using the regress function but using LinearModel it seems like a pain. Everytime i try to remove an object in .Coefficients it says that it<s a read only mode...

Simon on 30 May 2013

If i try to create a variable Fstat{i} = REG.Coefficients.tStat i will loose the Var names. With 4-5 var it isn<t much of a problem but with 50+ I won<t be able to understand the answer.

Simon

Products

No products are associated with this question.

1 Answer

Answer by Tom Lane on 30 May 2013
Accepted answer

I don't really understand the question, but to the part where you express a desire to retain the variable names when you save the coefficients, you could try this:

Fstat{i} = REG.Coefficients(:,'tStat')

The difference is that ds.x fetches the variable x from the dataset ds, whereas ds(:,'x') creates a single-column dataset using only the column for x.

0 Comments

Tom Lane

Contact us