Improve the estimation of first minimum
Datseris opened this issue · 0 comments
In the function estimate_delay
we currently estimate the first minimum (of either autocor or mutualinformation) using the direct result and a distance of a single index (i.e. when we find a value so that x[i-1] > x[i] < x[i+1]
then the index i
is the index of the first minimum):
DelayEmbeddings.jl/src/estimate_delay.jl
Lines 77 to 87 in 4bcb325
This is not optimal for data that contain even the slightest bit of noise, and the computation of the mutual information is not perfectly smooth. It is better to first smoothen the autocorrelation or mutual information, by e.g. convolving with a Gaussian kernel. From an API perspective this is simple: add a keyword smoothen = ...
. If it is nothing
, then no smoothing is done, (current behavior) otherwise it does gaussian convolution.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.