Convert two cell arrays (time values and data values) to one cell array of timeseries

3 vues (au cours des 30 derniers jours)
Hello all.
I have two cell arrays: t and y. Cell t contains the time values of 200 timeseries. Y contains the data values of 200 timeseries. The size of Y and t are 1x200. Each elemnt is a 1D vector.
How can I create a new cell array AA with a size of 1x200, whose elements are the reconstructed timeseries from elemnts of t and Y. Please note that "timeseries" are the matlab format of timeseries(datavals,timevals)

Réponse acceptée

Voss
Voss le 31 Oct 2023
AA = cellfun(@(dd,tt)timeseries(dd,tt),Y,t,'UniformOutput',false);
  6 commentaires
yamid
yamid le 31 Oct 2023
Modifié(e) : yamid le 31 Oct 2023
Thank you, Voss. After resampling, the cell array BB contains several timeseries that have lots of NaN values (due to extrapolation). Is there a way to remove all those data points from each timeseries in BB that have NaN in Time and Data?
Voss
Voss le 31 Oct 2023
BB = cellfun(@(tsin)delsample(tsin,'Index',find(isnan(tsin.Data))),BB,'UniformOutput',false);

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Time Series dans Help Center et File Exchange

Produits


Version

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by