Confidence intervals around trend

12 visualizzazioni (ultimi 30 giorni)
Peter
Peter il 30 Lug 2013
Risposto: star il 23 Ott 2014
I am trying to compute confidence intervals around a trend line, such as that seen in the website below:
I am not confident that using polyconf with ployfit is the right way to go. Can anyone suggest how I might achieve this? Many thanks

Risposte (3)

Wayne King
Wayne King il 30 Lug 2013
Modificato: Wayne King il 30 Lug 2013
Do you have the Statistics Toolbox?
One way:
load carsmall;
X = ones(length(Horsepower),2);
X(:,2) = Horsepower;
Y = Acceleration;
[b,bint] = regress(Y,X);
x = min(Horsepower):0.01:max(Horsepower);
yfit = b(1)+b(2)*x;
plot(Horsepower,Y,'k*')
hold on;
ylower = bint(1,1)+ bint(2,1)*x;
yupper = bint(1,2)+bint(2,2)*x;
plot(x,yfit,'r','linewidth',2)
plot(x,ylower,'b-.')
plot(x,yupper,'b-.')
Another way using LinearModel.fit
mdl = LinearModel.fit(Horsepower,Y);
ci = coefCI(mdl);
Note that ci is the same matrix as bint. The nice thing about LinearModel.fit is that there is a plot() method that will give you the plot with the confidence intervals
plot(mdl)

Shashank Prasanna
Shashank Prasanna il 30 Lug 2013
You can use polyconf
Alternatively you can fit your model using LinearModel.fit and use predict to collect the second argument which is the prediction confidence interval.
Set the 'Prediction' to 'Curve' to predict confidence bounds for the fitted mean (trend) values.

star
star il 23 Ott 2014
I should say that before trying to compute the confidence interval, it is better if you try to figure out where does it come from? Then, you can calculate through any software. Software are just languages.

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by