Normalize Data and Regression Polynom
Normalization
Normalize()
If there is a big differenz between x/y-data (e.g. percent x-values to ~103 y-values) you may get polynom coefficients ~0 (see Regression Model in Scatterplot vs p0(x) ). Set rounding up to 15 decimal places to avoid rounding errors OR do
Normalization of data
Functions for single value processing:
XNorm(t) do normalization of x-values [0, 1]
YNorm(t) do normalization of y-values [0, 1]
Yinvn(t) do denormalization of y-values
Fit with list of data, no normalization
p0(x) = 0.00003748588368154x² - 0.3256415866742x + 614.1874647092
Fit with normalized data : normdata = Normalize(data)
pn(x) = 0.3908102766798x² - 1.430560227623x + 1.039570076342
x-value 1200 normalized: | Xnorm(1200) = 1/3 | |
regression y-value of normalized data: | pn(Xnorm(1200)) = 0.6061400312094 | |
denormalized y-value of normalized data: | Yinvn(pn(Xnorm(1200))) = 277.3972332016 | |
y-value of regression no normalization: | p0(1200)=277.397233201 | |
reconstructed function from nomalization | f(x)=Yinvn(p_n(Xnorm(x))) | |