Hi there.
I have a column vector with dates on the following format: yyyymm
E.g. [199001, 199002, 199003 ...]'
They are all the last trading day of the month.
How can I transform them into matlab serial date numbers?
Thanks

 Respuesta aceptada

Sean de Wolski
Sean de Wolski el 8 de Ag. de 2014
Editada: Sean de Wolski el 8 de Ag. de 2014

0 votos

x = [199001, 199012, 199003]';
% Calculate year and month
mm = rem(x,100);
yyyy = (x-mm)./100;
% get last business day (Financial Toolbox Req'd)
last_bus_day = lbusdate(yyyy,mm)

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 8 de Ag. de 2014

0 votos

d=[199001, 199002, 199003 ]
a=arrayfun(@(x) datenum(num2str(x),'yyyymm'),d)

2 comentarios

Azzi Abdelmalek
Azzi Abdelmalek el 8 de Ag. de 2014
Editada: Azzi Abdelmalek el 8 de Ag. de 2014
V commented
Dear Azzi, Thank you for your answer. However, the code you mentioned gives me the first day of month and not the last trading day. Thanks
Azzi Abdelmalek
Azzi Abdelmalek el 8 de Ag. de 2014
There are no days in your data, look at your question, (yyyy/mm)

Iniciar sesión para comentar.

Categorías

Más información sobre Financial Toolbox en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

V
V
el 8 de Ag. de 2014

Editada:

el 8 de Ag. de 2014

Community Treasure Hunt

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

Start Hunting!

Translated by