Combining to two Cells
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Stephan Richtering
am 13 Jan. 2016
Kommentiert: Star Strider
am 13 Jan. 2016
I 've scouring the web to find a solution but not much success
p = [{2323}]; k = {'hello'};
where I want pk = {'2323hello'}
Pretty much what the concatenate function in excel would do.
Thanks, Stephan
0 Kommentare
Akzeptierte Antwort
Brendan Hamm
am 13 Jan. 2016
One of the issues you will face here is that what is stored in the cell array p is numeric data and concatenation of numeric data with character arrays will convert the numeric value to its ASCII representation.
>> A = [2323,'hello']
A =
ओhello
This is not what you are looking for. So, you need to convert the number to a character array using num2str:
>> A = [num2str(2323),'hello']
A =
2323hello
Now if this data is stored in cells we can simply concatenate the contents (which are the char arrays):
p = {2323}; % Brackets around {} are not necessary.
k = {'hello'};
A = {[num2str(p{:}),k{:}]}; % Convert num to a string, concatenate, place back in cell
If we were then to presume that these variables had a larger (but equal) size:
p = {2323;3434}
k = {'hello';'goodbye'}
for n = 1:length(p)
A(n) = {[num2str(p{n,1}),k{n,1}]};
end
disp(A)
Weitere Antworten (2)
Star Strider
am 13 Jan. 2016
Using sprintf is one option:
p = {2323}; k = {'hello'};
pk = {sprintf('%d%s', p{:}, char(k))}
pk =
'2323hello'
2 Kommentare
Vaibhav Awale
am 13 Jan. 2016
Hi,
This can be done using the following command:
>> pk = {[num2str(p{:}), k{:}]}
Refer to following documentation for more information about how cell array indexing works:
Hope this helps.
Regards,
Vaibhav
2 Kommentare
Vaibhav Awale
am 13 Jan. 2016
Hi Stephan,
Interestingly "num2str" function returns the string if you give string as an input. So, this approach would work even when "p" is a string!
Regards,
Vaibhav
Siehe auch
Kategorien
Mehr zu Characters and Strings finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!