creating a sub date time array

11 visualizzazioni (ultimi 30 giorni)
ismail bhamjee
ismail bhamjee il 16 Dic 2019
Modificato: Adam Danz il 18 Dic 2019
I have a datetime array conisisting of dates from the 1980s till recent. it is stored in a date time array. how do i sperate the datetime array into years. for example i want a seperate array for 1980 till 1990 so on and so forth.
Capture.PNG
my data looks like this.

Risposta accettata

Adam Danz
Adam Danz il 17 Dic 2019
Modificato: Adam Danz il 18 Dic 2019
This 2-step process is done in 1 line.
  1. Round the year of the datetime vector to the decade (1999 becomes 1990s)
  2. Use [G,ID] = findgroups(A) to group the datetime vector by decades.
% Create demo data
dt = (datetime(1981,12,01) : hours(4) : datetime('now'))';
% Assign groups to datetime vector; group by decade
[decadeGroup, decade] = findgroups(floor(year(dt)/10)*10);
decade is a list of decades in your datetime vector.
decadeGroup are positive integers 1:n for n-decades of data.
For example to isolate the 1990s,
NinteenNinties = dt(decadeGroup==find(decade==1990));

Più risposte (0)

Categorie

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

Community Treasure Hunt

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

Start Hunting!

Translated by