Cobine two cell arrays with Nested Cellfun

1 次查看(过去 30 天)
Hi all,
I have two cell arrays : A = {'13','15','17,'18'}; B = {'16','18','20','22','24',25','26','27,'28'};
I want to comine them and create a new cell array (of size 1x36) such that each element in the cell array is of the form '13x16','13x18',....'13x28','15x16',....'15x28',...'18x16',....'18x28'
I thought of using a nested cellfun for this like shown below : Combi = cellfun(@(x) cellfun(@(y) [x, 'x', y],B,'Uniform',false), A,'Unifrom',false);
However I get an error saying 'Input #3 expected to be a cell array, was char instead'
Any ideas what could be going on ?

回答(1 个)

Andrei Bobrov
Andrei Bobrov 2016-2-10
[b,a] = ndgrid(B,A);
out = strcat(a,{'x'},b);
  1 个评论
Moiz
Moiz 2016-2-10
Tried this but does not seem to work. First of all the ndgrid function returns an error 'Undefined function 'full' for input arguments of type 'cell'...

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by