# fit data trend with equation

1 view (last 30 days)
C.G. on 1 Aug 2022
Answered: Milan Bansal on 20 Sep 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?
plot(period,smd,'-k')
xlim([0 5000])
xlabel('Period (s)')
ylabel('Power-Power')

Milan Bansal on 20 Sep 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
Obtain the fitted curve using "polyval" function.
y = polyval(p,period);
Hope it helps!