MATLAB: How to ensure that the output of X2MDATE is the same dimension as the input in the Financial Toolbox R2011a (4.0)

Financial Toolbox

The function X2MDATE alters the dimensions of n-dimensional arrays. For example if I set:
dates = cat(3, 40735, 40736, 40737)
and then call:
x2mdate(dates)
I get a 1×3 matrix returned. How can I get the 1×1×3 n-dimensional array that I expected?

Best Answer

The ability to obain an n-dimensional array output from X2MDATE that is the same size as the input is not available in the Financial Toolbox R2011a (4.0).
As a workaround, obtain an n-dimensional array that is the same dimensions as the input by using the RESHAPE function, as follows:
reshape(x2mdate(dates), size(dates))
Alternatively, use ARRAYFUN, as follows:
arrayfun(@x2mdate, dates)