How can I compute spectrogram for data vector containing NaN values?

6 vues (au cours des 30 derniers jours)
Dear community,
I am currently working on seismic recordings and I need to compute the spectrogram. The dataset has been cleaned in advance, and thus the original vector contains small portions of NaN values (about a few seconds each with a sample rate of 100 Hz).
However, spectrogram function cannot be applied to NaN values without compromising the entire result, and applying it to not NaN values (applied to data(~isnan(data)) would provide incorrect results (spectrogram function assumes that the sample rate is homogeneous which would no longer be the case).
I do not really know how to manage this issue, and to compute a correct power spectral density for my data, if anyone has a clue...
Thank you

Réponse acceptée

KSSV
KSSV le 14 Juin 2019
Modifié(e) : KSSV le 14 Juin 2019
Multiple options:
  1. Discard NaN's
  2. Fill the NaN's using interpolation (interp1, spline)
  3. Fill the NaN's using fillmissing
  4. Fill the NaN's using fillgaps
My favourite is 4 th option.

Plus de réponses (0)

Catégories

En savoir plus sur Seismology 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