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

4 visualizzazioni (ultimi 30 giorni)
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)

Risposta accettata

Voss
Voss il 31 Ott 2023
AA = cellfun(@(dd,tt)timeseries(dd,tt),Y,t,'UniformOutput',false);
  6 Commenti
yamid
yamid il 31 Ott 2023
Modificato: yamid il 31 Ott 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 il 31 Ott 2023
BB = cellfun(@(tsin)delsample(tsin,'Index',find(isnan(tsin.Data))),BB,'UniformOutput',false);

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Time Series in Help Center e File Exchange

Prodotti


Release

R2023b

Community Treasure Hunt

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

Start Hunting!

Translated by