Cobine two cell arrays with Nested Cellfun

5 vues (au cours des 30 derniers jours)
Moiz
Moiz le 10 Fév 2016
Commenté : Moiz le 10 Fév 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 ?

Réponses (1)

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

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by