# calculate empirical distribution function and interpolation

5 views (last 30 days)
alpedhuez on 2 Jun 2020
Commented: alpedhuez on 4 Jun 2020
I have a data of
column 1 = temperature at 55F, 57F, 60F,...
column 2 = sales of sunglasses at these temperatures
I want to calculate the empirical distribution of sales of sunglasses over time and then use this empirical distribution to estimate the sales of sunglasses when the temperature is 56.6F, etc.
I tried to use polyfit but told that polynomial is badly conditioned.

Jeff Miller on 3 Jun 2020
You want to use the regress function, something like this:
X = [ones(size(temp) temp)]; % temp is a column vector of temperatures
b = regress(sales,X); % sales is a column vector of sales
SalesAt56pt6 = b(1) + b(2)*56.6;
empirical distribution functions and polyfit are both used in different types of situations than you are describing.
hth

alpedhuez on 3 Jun 2020
I wanted to improve over a linear regression.
Jeff Miller on 4 Jun 2020
You can add some nonlinear terms like this:
X = [ones(size(temp)) temp temp.^2 temp.^3]; % temp is a column vector of temperatures
b = regress(sales,X); % sales is a column vector of sales
SalesAt56pt6 = b(1) + b(2)*56.6 + b(3)*56.6^2 + b(4)*56.6^3;
This technique will fit a polynomial of any order you want
alpedhuez on 4 Jun 2020
Thank you. How does it differ from polyfit?