How can I fit linear regression model with the measured data with a known intercept?
7 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Mahfuza Khatun
am 2 Feb. 2018
Beantwortet: mer potter
am 28 Jun. 2022
I am working on close-in reference path loss model in MATLAB, where the code is given below:
PL_dB= file(:,2); dis_inch=file(:,1); dis_m= dis_inch * 0.0254
c = 3*10^8; %in light speed in free space fc = 2.4*10^9; lamda=c/fc; do =0.0254; % free space refernce distance for 5.8Ghz 1 inch=0.3048m PL_do = 20*log10(4*pi*do/lamda);% y intercept dis_dB = 10* log10 (dis_m/do); % slope of the regression line/ path loss exponent, n % find the z-score of measurement values z_dis = dis_dB- mean(dis_dB)/sqrt(var(dis_dB)); z_PL = PL_dB- mean(PL_dB)/sqrt(var(PL_dB)); r= sum(z_dis.* z_PL)/ length(z_PL) % correlation coefficient
In this case, the intercept is known. How can I find the linear regression plot based on y and x-axis data?
0 Kommentare
Akzeptierte Antwort
Star Strider
am 2 Feb. 2018
You have not stated what ‘x’ and ‘y’ are in your code. However, knowing that ‘PL_do’ is the desired y-intercept, I would do:
b = x(:) \ [y(:)-PL_do]; % Linear Regression
then to estimate a linear regression line to plot with the desired x-data:
y_fit = x(:)*b + PL_do;
You can then plot ‘y_fit’ as a function of ‘x’.
0 Kommentare
Weitere Antworten (2)
Mahfuza Khatun
am 2 Feb. 2018
Bearbeitet: Mahfuza Khatun
am 2 Feb. 2018
1 Kommentar
Star Strider
am 3 Feb. 2018
As always, my pleasure!
The revised code (using your variables) are:
b = dis_dB(:) \ [PL_dB(:)-PL_do]; % Linear Regression
y_fit = dis_dB(:)*b + PL_do;
The regression that calculates ‘b’ will have a 0 intercept. Adding ‘PL_do’ to the evaluated line will produce the linear regression with the y-intercept you want.
mer potter
am 28 Jun. 2022
Hello. Do you still happen to have a code for this problem, cause I have a very simillar asignment and i'm completely lost. Thank you in advance.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Linear Regression finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!