# convert number to string but keep it the same as it is

125 views (last 30 days)
Locks on 19 Sep 2014
Commented: Star Strider on 20 Sep 2014
Hi,
I have a Matrix containing different time series and I gave them numbers (2000001, 2000002,2000003 etc.) and I would like to convert this numbers into a string. If I use int2Str I get some Kind of matlab representation of this number, but this is not what I am looking for. What I need is at the end a vector as follows:
A=['2000001','2000002','2000003', etc.]
how can I achieve this by a automatic command?
regards

Star Strider on 19 Sep 2014
In one line:
M = [2000001, 2000002,2000003];
S = strsplit(num2str(M));
produces:
S =
'2000001' '2000002' '2000003'

Show 1 older comment
Star Strider on 19 Sep 2014
I didn’t see the semicolons that indicated you want them as a column vector of strings.
This works:
M = [2000001, 2000002, 2000003];
S = strsplit(num2str(M))'
and produces:
S =
'2000001'
'2000002'
'2000003'
If ‘M’ was initially either a row vector or a column vector, this works:
M = [2000001, 2000002, 2000003]';
S = strsplit(num2str(M(:)'))'
producing the same column vector as before.
Either num2str or int2str will work in this application.
Guillaume on 20 Sep 2014
strsplit (and strjoin) were introduced in version 2013a, if I recall.
Star Strider on 20 Sep 2014
I don’t remember when it arrived.
In its absence, this is as good as it gets:
S = cellstr(int2str(M(:)))
and produces:
S =
'2000001'
'2000002'
'2000003'

Youssef Khmou on 19 Sep 2014
Edited: Youssef Khmou on 19 Sep 2014
You can achieve that command using transformation from matrix to cells, if M is your matrix :
M=magic(10);
N=size(M);
B=mat2cell(num2str(M(:)),ones(N(1)*N(2),1));
B=reshape(B,N(1),N(2));

Mikhail on 19 Sep 2014
You can convert each number separetely in the for loop.
for i=1:numel(M)
out(:,i)=int2Str(M(i))
end
And you will have out - array of strings Code may have some errors - i didn't try to compile it

#### 1 Comment

Locks on 19 Sep 2014
tis results in
222
000
000
000
000
000
123
but that is exactly what I whant to avoid