Concatenating Arrays end to end 1D

2 次查看(过去 30 天)
Hi folks, I am trying to join some 1d arrays together, some with numbers and others with text, but running into some issues.
I have the following:
Blank='-';
FailureCode = 18;
Duplicates = [1;71;91;119;141;155;160;255];
a= cellstr(repmat(Blank, [FailureCode 1]));
e = cat(1, Duplicates, a)
e = 19×1 cell array
{8×1 double} {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' }
From this, it can be seen that the first cell is an 8x1 double. However I would like a full 1d array where the last value of duplicates joins to the first value of the repeated dash symbol array 'a'.
Hope someone can help!
Thanks,
Calum.

采纳的回答

Star Strider
Star Strider 2023-8-22
One option is to convert ‘Duplicates’ to a cell array (using num2cell) to make it compatible with the other values —
Blank='-';
FailureCode = 18;
Duplicates = [1;71;91;119;141;155;160;255];
a= cellstr(repmat(Blank, [FailureCode 1]));
e = cat(1, num2cell(Duplicates), a)
e = 26×1 cell array
{[ 1]} {[ 71]} {[ 91]} {[119]} {[141]} {[155]} {[160]} {[255]} {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' } {'-' }
.
  2 个评论
Calum
Calum 2023-8-22
Hi Star Strider, thanks a lot. Was silly of me to overlook compatibility. This works perfectly!
C.
Star Strider
Star Strider 2023-8-22
As always, my pleasure!
No worries! I needed to experiment with a couple different approaches to get it to work.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

产品


版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by