How do I get correct dates for seasonal sst data (JJAS) using datenum function?

Respected All, I am a beginner to Matlab. I have 4months sst data per every year from 1980 to 2010. How do I get correct dates for that using datenum function? I am getting dates are as follows. Could you please help me in this context? Please check the below script. 01-Jun-1980 00:00:00 29-Aug-1980 09:36:00 26-Nov-1980 19:12:00 24-Feb-1981 04:48:00 24-May-1981 14:24:00 22-Aug-1981 00:00:00 19-Nov-1981 09:36:00 16-Feb-1982 19:12:00 17-May-1982 04:48:00 14-Aug-1982 14:24:00 12-Nov-1982 00:00:00 09-Feb-1983 09:36:00 09-May-1983 19:12:00 07-Aug-1983 04:48:00 04-Nov-1983 14:24:00 02-Feb-1984 00:00:00 01-May-1984 09:36:00 29-Jul-1984 19:12:00 27-Oct-1984 04:48:00 24-Jan-1985 14:24:00 24-Apr-1985 00:00:00 22-Jul-1985 09:36:00 19-Oct-1985 19:12:00 17-Jan-1986 04:48:00 16-Apr-1986 14:24:00 15-Jul-1986 00:00:00 12-Oct-1986 09:36:00 09-Jan-1987 19:12:00 09-Apr-1987 04:48:00 07-Jul-1987 14:24:00 05-Oct-1987 00:00:00 02-Jan-1988 09:36:00 31-Mar-1988 19:12:00 29-Jun-1988 04:48:00 26-Sep-1988 14:24:00 25-Dec-1988 00:00:00 24-Mar-1989 09:36:00 21-Jun-1989 19:12:00 19-Sep-1989 04:48:00 17-Dec-1989 14:24:00 17-Mar-1990 00:00:00 14-Jun-1990 09:36:00 11-Sep-1990 19:12:00 10-Dec-1990 04:48:00 09-Mar-1991 14:24:00 07-Jun-1991 00:00:00 04-Sep-1991 09:36:00 02-Dec-1991 19:12:00 01-Mar-1992 04:48:00 29-May-1992 14:24:00 27-Aug-1992 00:00:00 24-Nov-1992 09:36:00 21-Feb-1993 19:12:00 22-May-1993 04:48:00 19-Aug-1993 14:24:00 17-Nov-1993 00:00:00 14-Feb-1994 09:36:00 14-May-1994 19:12:00 12-Aug-1994 04:48:00 09-Nov-1994 14:24:00 07-Feb-1995 00:00:00 07-May-1995 09:36:00 04-Aug-1995 19:12:00 02-Nov-1995 04:48:00 30-Jan-1996 14:24:00 29-Apr-1996 00:00:00 27-Jul-1996 09:36:00 24-Oct-1996 19:12:00 22-Jan-1997 04:48:00 21-Apr-1997 14:24:00 20-Jul-1997 00:00:00 17-Oct-1997 09:36:00 14-Jan-1998 19:12:00 14-Apr-1998 04:48:00 12-Jul-1998 14:24:00 10-Oct-1998 00:00:00 07-Jan-1999 09:36:00 06-Apr-1999 19:12:00 05-Jul-1999 04:48:00 02-Oct-1999 14:24:00 31-Dec-1999 00:00:00 29-Mar-2000 09:36:00 26-Jun-2000 19:12:00 24-Sep-2000 04:48:00 22-Dec-2000 14:24:00 22-Mar-2001 00:00:00 19-Jun-2001 09:36:00 16-Sep-2001 19:12:00 15-Dec-2001 04:48:00 14-Mar-2002 14:24:00 12-Jun-2002 00:00:00 09-Sep-2002 09:36:00 07-Dec-2002 19:12:00 07-Mar-2003 04:48:00 04-Jun-2003 14:24:00 02-Sep-2003 00:00:00 30-Nov-2003 09:36:00 27-Feb-2004 19:12:00 27-May-2004 04:48:00 24-Aug-2004 14:24:00 22-Nov-2004 00:00:00 19-Feb-2005 09:36:00 19-May-2005 19:12:00 17-Aug-2005 04:48:00 14-Nov-2005 14:24:00 12-Feb-2006 00:00:00 12-May-2006 09:36:00 09-Aug-2006 19:12:00 07-Nov-2006 04:48:00 04-Feb-2007 14:24:00 05-May-2007 00:00:00 02-Aug-2007 09:36:00 30-Oct-2007 19:12:00 28-Jan-2008 04:48:00 26-Apr-2008 14:24:00 25-Jul-2008 00:00:00 22-Oct-2008 09:36:00 19-Jan-2009 19:12:00 19-Apr-2009 04:48:00 17-Jul-2009 14:24:00 15-Oct-2009 00:00:00 12-Jan-2010 09:36:00 11-Apr-2010 19:12:00 10-Jul-2010 04:48:00
Thanks in advance for any help,
best regards, Nagarjuna. email:nagarjuna@tropmet.res.in

 Akzeptierte Antwort

Unless you are using a fairly old (< R2014b) version of MATLAB, don't use datenums. Use datetimes:
>> datetime({'01-Jun-1980 00:00:00' '29-Aug-1980 09:36:00'})
ans =
1×2 datetime array
01-Jun-1980 00:00:00 29-Aug-1980 09:36:00

1 Kommentar

Hello Sir, Thanks for your message and suggestion. I am using Matlab R2014a version. I need jjas each year (like 01-Jun-1980 00:00:00 01-Jul-1980 00:00:00 01-Aug-1980 00:00:00 thereafter for remaining years as before. I have resolved that issue using the below code. month=rem(time,12)+1; yr=1870+floor(time/12); for ii = 1:length(yr) dd{ii}=datenum(yr(ii),month(ii),1,0,0,0); disp(datestr(datenum(yr(ii),month(ii),1,0,0,0),0)); end

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by