Azzera filtri
Azzera filtri

extract numbers from time series

2 visualizzazioni (ultimi 30 giorni)
Have a time series from 1 to 156. Want to extract the values from 1:6, then from (1+12) : (6+12), etc into a new variable. How to go about.
  6 Commenti
Adam Danz
Adam Danz il 13 Ago 2018
Ok. If the numbers are serial date numbers that matlab recognizes, my solution should work well. Otherwise, we'd just need to convert them to a format that Matlab recognizes which should be fairly simple.
Johannes Deelstra
Johannes Deelstra il 13 Ago 2018
i solved the problem, thanks for your help and suggestions

Accedi per commentare.

Risposta accettata

Adam Danz
Adam Danz il 13 Ago 2018
I don't know what format your dates are in but this can be adapted to any format. I assume your matrix is named 'data' and the dates are in the 5th column.
% Get the month number for each date
monthNum = month(data(:,5));
% Logical index of rows that are between May and October
monthIdx = ismember(monthNum, [5:10]);
% Extract your data for these months
data(monthIdx, :)

Più risposte (1)

Fangjun Jiang
Fangjun Jiang il 13 Ago 2018
a=1:156;
b=reshape(a,6,[]);
c=b(:,1:2:end)
  2 Commenti
Johannes Deelstra
Johannes Deelstra il 13 Ago 2018
see my answer to the question I got from Adam. Tried to be more specific.
Johannes Deelstra
Johannes Deelstra il 13 Ago 2018
the dates are numbers, such as 33725 33756 33786 33817 33848 33878 33909 33939 33970 34001 34029

Accedi per commentare.

Categorie

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

Tag

Prodotti


Release

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by