Counting years from a date time variable

3 Ansichten (letzte 30 Tage)
Luca
Luca am 15 Mai 2021
Kommentiert: Luca am 16 Mai 2021
Hi,
I have table with a datetime variable in it from 02.January.1962 to 31.December 2016. i would like to create a new you column where the value staring with one changes every 5 year.
So the periond from 02.January.1962 - 31.December. 1966 would be one the next five year would be 2 an so on.
Does someone know how to do it?
Thank you in advance.

Akzeptierte Antwort

Scott MacKenzie
Scott MacKenzie am 15 Mai 2021
Bearbeitet: Scott MacKenzie am 15 Mai 2021
This seems to achieve what you are after...
% test data
d = datetime(randi([1962 2020],1,50), randi(12,1,50), randi(28,1,50));
d = sort(d);
yrs = d(:).Year;
span5 = yrs(1):5:yrs(end)+5;
n = discretize(yrs, span5);
T = timetable(d', n)
Output:
T =
50×1 timetable
Time n
___________ __
04-Sep-1962 1
13-Nov-1962 1
25-Apr-1964 1
11-Jun-1965 1
26-Jul-1965 1
08-Sep-1965 1
10-Mar-1967 2
14-Feb-1968 2
13-Mar-1968 2
05-Feb-1969 2
18-Feb-1970 2
08-Mar-1971 2
12-Feb-1974 3
22-Jan-1975 3
10-Aug-1975 3
12-Sep-1976 3
04-Mar-1977 4
17-Apr-1977 4
23-Dec-1979 4
19-Jul-1981 4
08-Apr-1983 5
14-Feb-1984 5
15-Aug-1984 5
19-Feb-1986 5
20-Jun-1987 6
27-Oct-1989 6
28-Mar-1992 7
11-Jan-1993 7
18-Jan-1993 7
06-Oct-1995 7
25-Mar-1996 7
14-Oct-1996 7
07-Feb-1998 8
12-Sep-1998 8
14-Oct-1998 8
01-Jan-2001 8
10-May-2003 9
09-Aug-2004 9
08-Apr-2006 9
23-Aug-2006 9
08-Nov-2007 10
28-Feb-2010 10
08-Mar-2010 10
26-Aug-2012 11
18-Aug-2013 11
20-Apr-2014 11
15-Oct-2014 11
03-Feb-2015 11
21-Jun-2016 11
20-Oct-2017 12

Weitere Antworten (0)

Kategorien

Mehr zu Dates and Time finden Sie in Help Center und File Exchange

Produkte


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by