Multiple regression by hand

4 次查看(过去 30 天)
Hi,
I want to compute the b of regression using matrix notation: Meaning this:
b1=regress(a,B) % Matlab function regress
into this
b2=((B'*B).^(-1))*B'*a % matrix notation
But I don't get the same betas: b1 is not equal to b2 when B has more than one column. But both are equal when it is simple regression. Not sure what I may be doing wrong,
Thank you, GM

采纳的回答

Image Analyst
Image Analyst 2014-12-2
What is your B?
I think the formula should be
b2 = inv(B'*B) * B' * a;
  4 个评论
Tahariet Sharon
Tahariet Sharon 2014-12-3
Thanks, thanks, thanks, thanks!
Image Analyst
Image Analyst 2014-12-4
编辑:Image Analyst 2014-12-4
John's correct that the more MATLAB-ish backslash method is preferable to the standard "book" formula like I gave, and which is what I thought you wanted. I think I can give myself a pat on the back though for raising John to a level of excitement rarely, if ever, seen before. :-) Now I have a challenge to see what it will take to get 30 NO's.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Mathematics and Optimization 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by