create a cell array of numbers
Show older comments
hi
i need to create a cell array with numbers from 0000-1000
notice that numbers must be in a 4-digit format
how can i do this?
thanks
3 Comments
Jan
on 16 Jun 2013
Do you want a cell, which contains strings, or a matrix of type CHAR wither line breaks as separators?
Tobias Müller
on 25 Apr 2019
cell(linspace(1,100,1000))
;)
Walter Roberson
on 25 Apr 2019
linspace(1,100,1000) would contain non-integer values, which cell would not be able to use a dimension sizes to construct a 1000-dimensional cell array.
Accepted Answer
More Answers (1)
Walter Roberson
on 16 Jun 2013
No. In MATLAB, numbers automatically drop leading 0's when displayed.
What is possible is to create a cell array of strings from '0000' to '1000'.
cellstr(num2str(0:1000).', '%04d')
Note: the .' is required there; without it the strings would come out wrong.
5 Comments
noa
on 16 Jun 2013
Walter Roberson
on 16 Jun 2013
cellstr(num2str(0:1000, '%04d').')
Xiangrui Li
on 28 May 2020
Edited: Xiangrui Li
on 28 May 2020
It should be
cellstr(num2str((0:1000).', '%04d'))
Walter Roberson
on 28 May 2020
Walter Roberson
on 28 May 2020
There is also the undocumented
sprintfc('%04d', 0:1000)
Also since R2016b, there has also been
compose('%04d', 0:1000)
Categories
Find more on Cell Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!