![](/img/trans.png)
[英]How to get the slope and intercept of a least squares regression line in MATLAB?
[英]MATLAB - How to calculate 2D least squares regression based on both x and y. (regression surface)
我有一组具有独立变量x和y的数据。 现在,我正在尝试构建一个二维回归模型,该模型的回归点贯穿我的数据点。 但是,我找不到实现此目的的方法。 谁能给我些帮助?
如果要执行线性回归,最好的工具是regress
函数。 请注意,如果您要拟合形式为y(x1,x2) = b1.f(x1) + b2.g(x2) + b3
的模型,则只要您知道函数f
和g
Nsamp = 100; %number of samples
X1 = randn(Nsamp,1); %regressor 1 (could also be some computed f(x1) )
X2 = randn(Nsamp,1); %regressor 2 (could also be some computed g(x2) )
Y = X1 + X2 + randn(Nsamp,1); %generate some data to be regressed
%now run the regression
[b,bint,r,rint,stats] = regress(Y,[X1 X2 ones(Nsamp,1)]);
% 'b' contains the coefficients, b1,b2,b3 of the fit; can be used to plot regression surface)
% 'r' contains residuals of the fit
% 'stats' contains the overall regression R^2, F stat, p-value and error variance
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.