A compact way to find single digit numbers (i.e. numbers between 0 and 9) and replace them with two digit numbers
5 次查看（过去 30 天）
A compact way to find single digit numbers (i.e. numbers between 0 and 9) and replace them with two digit numbers ?
For example, from:
a = [ 8
I would like to add a zero in front of the single digit numbers:
b = [08
John D'Errico 2022-8-9
编辑：John D'Errico 2022-8-9
In MATLAB, you CANNOT store a number in a numeric format as one that has a leading zero.
If you want to convert the numbers to character form, then it is trivial. One line is sufficient.
a = [ 8
d = dec2base(a,10)
The result is no longer usable as a number though. It is effectively only a picture of a number at that point, or perhaps I should say a caricature, if you can stand the pun.
For what purpose and in what context? You will only be able to show the leading zeros if you convert the numeric values to some form of text in which case it's trivial
7×1 cell array
Well, there is one other way --
7×1 categorical array
but if you want a straight, ordinary double array to appear that way at the command line, just not possible.