how make multiple cut or crop of time series

21 vues (au cours des 30 derniers jours)
RichardB
RichardB le 14 Fév 2020
Commenté : Star Strider le 14 Fév 2020
I've got multiple time series. One has gaps and was concatenated when exported to a Mat file. Now some of the data was continuous and much longer than the concatenated. I need a way to cut the sections out of the continuous data at known time points and duration. I wanted to do something like this, but it obviously does not work.
SpeedCropped = Speed(1318:1409 1903:2065 2278:2445);
Is it possible? What is the correct syntax or do I have to do this 9 times?
Thanks

Réponse acceptée

Star Strider
Star Strider le 14 Fév 2020
We do not know the dimensions of ‘Speed’. Assuming it is a vector, to concatenate the indices, enclose them in square brackets:
SpeedCropped = Speed([1318:1409 1903:2065 2278:2445]);
If there are more dimensions, add additional default dimensions, such as for ‘Speed’ being a 2D matrix, where you are addressing the rows:
SpeedCropped = Speed([1318:1409 1903:2065 2278:2445],:);
or:
SpeedCropped = Speed(:,[1318:1409 1903:2065 2278:2445]);
if you are addressing the columns.
  2 commentaires
RichardB
RichardB le 14 Fév 2020
Thanks. Should have known that.
Star Strider
Star Strider le 14 Fév 2020
As always, my pleasure!
No worries! Not everything in MATLAB is immediately obvious, and there is a lot to remember about it.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

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