Smooth and Filter large data set
11 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a signal data array of 2,000,000 elements and I want to smooth the signal as it is very spiky. I tried to use the 'smooth' function with a span of 61, but it took MATLAB forever to process it. I ran it on a cluster node with 6 cores and I didn't get the results after 20 hrs. Is there any other ways to do the smoothing on a large dataset?
0 commentaires
Réponses (1)
Star Strider
le 21 Juil 2016
First, take the fft to see what frequencies are signal and what are noise. If it looks that you have separable signal and noise energy, you can use a frequency-selective filter to eliminate the noise. (Since ‘spikes’ tend to be characterised as being high-frequency, you may be able to filter out most of the ‘spike’ energy.)
There are several ways to design filters in MATLAB, including dfilt and designfilt. My IIR filter design procedure is here: How to design a lowpass filter for ocean wave data in Matlab?.
0 commentaires
Voir également
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!