![](/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.