Decimate signal that contains NANs

9 vues (au cours des 30 derniers jours)
Sina Salehi
Sina Salehi le 28 Déc 2019
Modifié(e) : Sina Salehi le 10 Jan 2020
Hi
How could I decimate signal that contains NAN values?

Réponses (3)

Ajay Pattassery
Ajay Pattassery le 31 Déc 2019
I understand you want to decimate signals that contain NaN.
I assume you would like to decimate a signal by a factor r if it contains NaN values.
I have removed the NaN values from the signal and then decimate it as follows.
x is assumed as the signal.
positionNaN = isnan(x);
x(positionNaN) = [];
y = decimate(x,r) ;
Here positionNaN is a logical array of the same size as x containing 1 whenever a NaN value is present otherwise zero.

Sina Salehi
Sina Salehi le 1 Jan 2020
Hi Ajay
My signal is time seriese and I need to keep the position of each values including NANs. So I can not easily removing NANs.
Thanks,
  1 commentaire
Ajay Pattassery
Ajay Pattassery le 2 Jan 2020
You could make the signal zero whenever NaN appears. There by keeping the position.
x(positionNaN) = 0;

Connectez-vous pour commenter.


Sina Salehi
Sina Salehi le 10 Jan 2020
Modifié(e) : Sina Salehi le 10 Jan 2020
Can't replace NAN data with any arbitary values. They have to be NAN after decimate either.

Catégories

En savoir plus sur NaNs dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by