MATLAB中能否利用曲线拟合提取的存储参数重建拟合函数?
Great question—let's cut straight to the answer and then break down why, plus how to do this correctly.
Short Answer
No, you cannot reconstruct the original smoothing spline fit using only the gof statistics you saved.
Why This Won't Work
The gof struct contains goodness-of-fit metrics (like sse, rsquare, rmse)—these are just numerical summaries of how well the fit matched your original data. They don't store any of the critical information needed to rebuild the actual fitting function:
- The positions of the spline knots
- The coefficients for each piecewise polynomial segment
- The smoothing parameter used to generate the spline
These core details are all stored in the population fit object (the output of fit()), not in gof.
The Correct Way to Save & Reconstruct Your Fit
To later plot or use the exact same smoothing spline fit, you need to save the population fit object itself, not just the gof stats. Here's how:
Step 1: Save the Fit Object
Run this right after fitting to store the full fit in a MAT file:
save('my_smoothing_spline.mat', 'population');
Step 2: Load & Reconstruct Later
When you need to reuse the fit (even without access to the original x/y data), load the saved object and use it exactly like you did originally:
load('my_smoothing_spline.mat'); plot(population); % Plots the exact same curve as before % You can also compute predictions for new x values: new_y = population(new_x_values);
Bonus: Save Only Critical Parameters (If Needed)
If you don't want to save the entire fit object, you can extract and save the underlying spline parameters from population.p (this is the structure that defines the spline's knots and coefficients). For example:
spline_params = population.p; save('spline_params.mat', 'spline_params');
Later, you can use these parameters to reconstruct the spline function manually (though using the full fit object is simpler and less error-prone).
Final Note
You can absolutely save the gof stats alongside the fit object for documentation purposes, but they're useless on their own for rebuilding the fit curve.
内容的提问来源于stack exchange,提问作者DrIbraComms

