How can I fill my cell array?

2 views (last 30 days)
Mira le
Mira le on 26 Nov 2019
Edited: Philippe Lebel on 26 Nov 2019
Hello,
U is cell:
U =
1×2 cell array
[1×2 double] [1×2 double]
>> U{1}
ans =
1 2
>> U{2}
ans =
2 3
T= []
T has the union of element of U 1 2 3
S = {}; is empty in the first time
I want to test each value of T if exist in U and the coy U{ i } in S, my S will be:
S={ { 1 2 }, {{1 2} {2 3}}, {2 3} }
  1 Comment
dpb
dpb on 26 Nov 2019
Show precisely how you think you built the output S array...

Sign in to comment.

Accepted Answer

Philippe Lebel
Philippe Lebel on 26 Nov 2019
Edited: Philippe Lebel on 26 Nov 2019
here is my try:
U{1} = [1,2];
U{2} = [2,3];
T = [1,2,3];
S = {};
for i = 1:length(T)
temp_cell = {};
k=1;
for j = 1:length(U)
if ismember(T(i),U{j})
temp_cell{k} = U{j};
k=k+1;
end
end
S{i} = temp_cell;
end
The only difference with what you explained in your question is that the elements in U are lists, not cells. (ismember() does not work on cells)

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!