Conversion from char to cell is not possible
68 次查看(过去 30 天)
显示 更早的评论
Hi I am trying to copy a cell array of strings to a cell array of cell arrays.
A = [8x3 char]
B = [8x1 double]
C = {8x2 cell}
C{1}(:,1) = A{1}; C{1}(:,2) = B{1};
how can i copy the strings in A cell to the first column of C cell and the integer data in B cell to 2nd column of C cell.
if i give like C{1}(:,1) = {A{1}};
A value is copied to all the rows in column 1 of C.
[8x3 char]
[8x3 char]
[8x3 char]
...
0 个评论
采纳的回答
Guillaume
2017-7-17
编辑:Guillaume
2017-7-17
Despite your statement, A is not a cell array, but a 2D char array. You can convert A into a cell array of char vectors using cellstr. So:
C = [cellstr(A), num2str(B)]
would be the simplest way to obtain what you want.
Note: Since R2016b, string is a new type different from the char arrays you're using. To avoid ambiguity use the term char array (or vector) instead of string.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!