Cobine two cell arrays with Nested Cellfun

1 visualizzazione (ultimi 30 giorni)
Moiz
Moiz il 10 Feb 2016
Commentato: Moiz il 10 Feb 2016
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 ?

Risposte (1)

Andrei Bobrov
Andrei Bobrov il 10 Feb 2016
[b,a] = ndgrid(B,A);
out = strcat(a,{'x'},b);
  1 Commento
Moiz
Moiz il 10 Feb 2016
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'...

Accedi per commentare.

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by