Clear Filters
Clear Filters

The curve in 3 dimensional space fitting.

2 views (last 30 days)
Moiseev Igor
Moiseev Igor on 24 Jul 2011
Hi I'm solving a curve fitting problem for wind data. I'm trying to estimate the general pareto distribution parameters for exceedances over the threshold.
GP = THRE + ALPHA/BETA*(1 - P^BETA);
where THRE value of the threshold used in the analysis; ALPHA dispersion or scale parameter; BETA mode of the extreme value distribution or shape parameter; P percentile of the quantile of interest;
After performing the threshold selection I obtain the estimated points in the space of
(BETA, ALFA, THRE)
It is the 1-dimensional curve in 3d space. After that we would like to get the regular curve fit. Are there any procedure in Matlab that can perform the fitting of the curve in 3d space?
Thank you for any help! Igor.
EDIT
  2 Comments
Walter Roberson
Walter Roberson on 25 Jul 2011
Could you perhaps post the plot in a graphics format, so it can be viewed outside of MATLAB?
Moiseev Igor
Moiseev Igor on 25 Jul 2011
It is a 3d plot, so I put 3 projection

Sign in to comment.

Answers (2)

Andrew Newell
Andrew Newell on 25 Jul 2011
Let's back up a step. I think what you are trying to do is estimate the parameters of a generalized Pareto distribution for a single data set. Is that correct?
If you have the Statistics Toolbox, you could use either gpfit if you are setting the threshold yourself, or gpcdf if you are estimating the threshold at each data point.
  1 Comment
Moiseev Igor
Moiseev Igor on 25 Jul 2011
Hi Andrew, thank you for the reply! Yes you're right, my bad, I've included to much and to few details, in a sense I confused you with GP distributions and so on. Yes I could use the gpfit and others, but we have a special algorithms which is based on general pareto but the implementation is different. So the question should be much shorter, only about the general 3d fitting. And it seems to me that the only way is to get use of 'lsqnonlin' function. What do think?

Sign in to comment.


Andrew Newell
Andrew Newell on 25 Jul 2011
You could fit a polynomial THRESHOLD(ALFA,BETA) using the File Exchange function polyval2. It might work better, however, if you transform the variables first so there isn't an asymptote for small BETA.
(edited typo)

Community Treasure Hunt

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

Start Hunting!