fit data trend with equation

1 visualizzazione (ultimi 30 giorni)
C.G.
C.G. il 1 Ago 2022
Risposto: Milan Bansal il 20 Set 2023
I have the datset attached, and i'm trying to find an equation which describes the trend.
I have tried using basic fitting but it does not fit a line and comes up with NaN's. Is there a reason for this and how can I find a trend easily?
load smd_period.mat
plot(period,smd,'-k')
xlim([0 5000])
xlabel('Period (s)')
ylabel('Power-Power')

Risposte (1)

Milan Bansal
Milan Bansal il 20 Set 2023
Hi,
I understand that you are facing an issue while fitting a curve to the given data.
As per the given data, output of the fitting function is "NaN" because the "period" variable in the attached ".mat" file contains repetitive values. Define the "period" variable using "linspace" function as shown in the example below.
period = linspace(0,5000,16385);
Use "polyfit" function to fit an approximate "n" degree polynomial to the data.
p = polyfit(period,smd,50); % fitting a 50 degree polynomial
Refer to the following documentation to learn more about "polyfit" function.
Obtain the fitted curve using "polyval" function.
y = polyval(p,period);
Refer to the following documentation to learn more about "polyval" function.
Hope it helps!

Categorie

Scopri di più su Curve Fitting Toolbox 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