concatenate values from matrix and cell array

1 view (last 30 days)
i have a matrix and a cell array
mtric =
1 2 3
4 5 6
7 8 9
cell_array =
aa bb cc
dd ee ff
gg hh ii
i wanted to combine both these as
new_out =
1 - aa 2 - bb 3 - cc
4 - dd 5 - ee 6 - ff
7 - gg 8 - hh 9 - ii

Accepted Answer

Stephen23
Stephen23 on 3 Apr 2019
>> M = [1,2,3;4,5,6;7,8,9];
>> C = {'aa','bb','cc';'dd','ee','ff';'gg','hh','ii'};
>> F = @(n,c) sprintf('%d - %s',n,c{:});
>> Z = arrayfun(F,M,C,'uni',0)
Z =
'1 - aa' '2 - bb' '3 - cc'
'4 - dd' '5 - ee' '6 - ff'
'7 - gg' '8 - hh' '9 - ii'

More Answers (1)

madhan ravi
madhan ravi on 3 Apr 2019
strcat(""+mtric,{'-'}, string(cell_array)) % string array
cellstr(strcat(""+mtric,{'-'}, string(cell_array))) % cell array
  4 Comments
Elysi Cochin
Elysi Cochin on 3 Apr 2019
Edited: Elysi Cochin on 3 Apr 2019
i'm using 2016a
string is also not recognized
says undefined function or variable
madhan ravi
madhan ravi on 3 Apr 2019
strcat(sprintfc('%d',mtric),{'-'},cell_array)

Sign in to comment.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products


Release

R2016a

Community Treasure Hunt

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

Start Hunting!