Get next business day without taking into account holidays and saturdays
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
chiefjia
el 17 de Oct. de 2021
Respondida: the cyclist
el 17 de Oct. de 2021
Dear MATLAB experts,
I'm trying to get the next business day of each date in an array without taking into account saturdays, but I can't manage to do so with the function 'busdate' from MATLAB. The aim is to get the next so named "weekday" discarding holidays for each one of the dates in the array. I would really appreciate your help, thank you in advance.
4 comentarios
the cyclist
el 17 de Oct. de 2021
According to the documentation, Saturday and Sunday are not business days by default. (This can be changed by using the Weekend input.)
Can you give a small example of your input data and code, including a date that is giving a result you don't want?
Respuesta aceptada
the cyclist
el 17 de Oct. de 2021
The issue is not a problem with busdate(), but with your understanding of the input. 20170610 is being interpreted as a serial date number. (See this documentation.)
datestr(20170610) % Serial date number 20170610 is April 2, 5225 which is a Wednesday
busdate(20170610, 1)
Here is your intended result, by first converting from the serial date number to a datetime.
busdate(datetime(num2str(20170610),'InputFormat','yyyyMMdd')) % Converted the serial date number to a datetime
Using the canonical datetime format for all dates in MATLAB is highly encouraged.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Calendar en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!