How to computing confidence bounds of the regression model using the bootstrap method

2 ビュー (過去 30 日間)
I would like to compute and plot the bootstrap confidence bounds of the non-linear regression model. I have computed the bootstrap confidence intervals of the coefficients and now I want to visually display the confidence bounds. In other words, I would like to have something similar to the red dotted lines in this figure
Here is what I have done so far.
modelfun = @(b,t)( 100*b(1).*exp(-b(3).*(1-exp(-b(4).*t))./b(4)-b(2).*((exp(-b(4).*t)-1+b(4).*t)./b(4).^2)) );
b=[1.0190; 2.2297e-5; 6.668e-13; 8.3576e-6];
t=exprnd(2,100,1);
y = modelfun(b,t) + normrnd(0,0.1,100,1);
beta0 = [1; 0.0001; .0000000001; .000001];
beta = @(predictor,response)nlinfit(predictor,response,modelfun,beta0);
newci = bootci(100,{beta,t,y},'Alpha',0.01)
I do not know how to proceed from here.
I appreciate any insights that can help me solve my question. Thanks
  1 件のコメント
Editor
Editor 2022 年 10 月 27 日
Since I posted the question, I have not received any feedback from the community. Could it that my question is not clear? Can someone kindly advise.

サインインしてコメントする。

採用された回答

Jeff Miller
Jeff Miller 2022 年 10 月 28 日
I'm assuming that your figure shows t on the horizontal axis and y on the vertical.
The problem is that bootci is giving you confidence intervals for the parameter values but what you really want (judging from the figure) is confidence intervals for the predicted y values at each t.
I think you can get those but it will be more work. You will have to use the bootstr function to generate bootstrap datasets, fit the model to each dataset, and then generate the predicted y values at each of a preselected set of t's for each bootstrap iteration. Then, after lots of iterations, you can look at the small and large (2.5% and 97.5%ile) y values that you generated for each t separately. Plotting the small ones vs t should give you your lower dotted line, and large versus t the upper.
I hope this is what you were asking for...
  1 件のコメント
Editor
Editor 2022 年 10 月 28 日
@Jeff MillerThank you very much. I have managed to do as you advised.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by