Insert cell array objects into a pre-made array
Mostra commenti meno recenti
Hi,
I am wondering if there is a way to enter the contents of a cell array into another array. I need this to be something I can do for cell arrays with contents that are of varying sizes. Let me give an example of what I mean. Let's say I have the following pre-made cell array
A={[1 3],[],[2 3 7 8];[2 4 5 7],[4 7 8],[];[],[],[]}
and now let's say I have the follow non-cell array
B=[0 0 5;0 3 0; 3 9 2]
Let's say I want to take A and everywhere in B where this is a zero, replace it with the corresponding location in A. So it would look like this
C=[[1 3],[],5;[2 4 5 7],3,[],3,9,2]
I am confused as to how or if I can do this. I know I can't just convert A to a non-cell array since each of the components of it are not the same size.
Risposte (1)
Andrei Bobrov
il 25 Nov 2016
Bc = num2cell(B);
t = B ~= 0;
C = A;
C(t) = Bc(t);
1 Commento
Morgan Clendennin
il 25 Nov 2016
Categorie
Scopri di più su Axis Labels in Centro assistenza e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!