Extending regression lines beyond data span
Mostra commenti meno recenti
Hi everyone,
I'm working on a code that would predict Arctic ice coverage during the rest of the 21st century, like so:
%load ice coverage data
data = load('Ice_North.txt');
%define variables
year = data(:,1);
data_month(:,1:12) = data(:,2:13); %a new matrix with monthly values only
%calculate the yearly average time series
yearData = nanmean(data_month,2);
%plot yearly averaged time series
figure(1)
plot(year, yearData, 'LineWidth',2,'Color','b')
xlabel('Year')
ylabel('Sea ice coverage (milions of km^2)')
grid on
title('Annual average Arctic sea ice coverage')
%regression analysis
%linear
coeff1 = polyfit(year,yearData,1);
f1 = polyval(coeff1,year);
hold on
plot(year,f1,'LineWidth',1.5,'Color','r')
%quadratic
coeff2 = polyfit(year,yearData,2);
f2 = polyval(coeff2,year);
hold on
plot(year,f2,'LineWidth',1.5,'Color','g')
legend('Data','Linear interpolation','Quadratic interpolation')
I would like to extend both linear and quadratic interpolations, so that they reach up to, for example 2100. Any advice on how to do that?
All the best,
Maja
5 Commenti
Jonas
il 27 Apr 2021
just add the numbers you asked for to the year variable in the polyval function, it evaluates the regression model at the point you enter there
Maja Zdulska
il 27 Apr 2021
Scott MacKenzie
il 8 Mag 2021
Modificato: Scott MacKenzie
il 8 Mag 2021
I made the modification Jona suggested. Seems the model predicts 2066 as the year all the sea ice is gone.
Maja, may I ask: Where did you get this data?
Maja Zdulska
il 8 Mag 2021
Scott MacKenzie
il 8 Mag 2021
Great. Thanks very much. Very nice work.
Risposte (0)
Categorie
Scopri di più su Multiple Linear Regression in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!