Matlab making new cell array from another cell array fileds -
i have cell array thiscells
:
thiscells <1*40 cell> eacharray of thiscells 280*3
i have function (thefunction
) gets input of cell array each array x*2
how can send cell array thefunction
contain columns1,3 each array?
i tried
thefunction(thiscells{:}(:,1:2)) % tring send columns 1,2
but didn't work
edit:
working (but still looking faster way so):
what did far
thefunction(makingnewcells(thiscells,2));
when
makingnewcells: [newcells]=makingnewcells(oldcells) ii=1:max(size(oldcells)) newcells=oldcells(:,[1 column]); end
this question , answers may of - thiscells{:}(:,1:2)
failing without call thefunction
, if not mistaken.
for cells, problem worse: add impossibility double-subref if did intended do, passes 40 arguments (which 280x2 vectors) thefunction
. doubt there (m)any legitimate uses function takes 40 arguments of same type, instead of having wrapped in cell. try doc cellfun
first.
edit: clear, suggest changing thefunction
accepts cell of 40 matrices of size 280x2), using
cell_of_twocolumned_arrays = cellfun(@(x)x(:,[1 2]),thiscells)
Comments
Post a Comment