Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- box = cell(10, 10, 10);
- for i = 1:10000
- loc = randi([1 10], [3 1]);
- value = randn(1);
- box{loc(1), loc(2), loc(3)} = [box{loc(1), loc(2), loc(3)}, {value}];
- end
- disp(box{1, 1, 1})
- % [1.2534] [1.5920] [0.4901] [-0.4669] [-0.5213] [-0.1594]
- disp(sum(cell2mat(box{1, 1, 1})))
- % 2.1879
- box_sum = cellfun(@(x) sum(cell2mat(x)), box, 'UniformOutput', false);
- disp(box_sum{1, 1, 1})
- % 2.1879
- box2 = cell(10, 10, 10);
- for i = 1:10000
- loc = randi([1 10], [3 1]);
- value = randn(5);
- box2{loc(1), loc(2), loc(3)} = [box2{loc(1), loc(2), loc(3)}, {value}];
- end
- disp(box2{1, 1, 1})
- % [5x5 double] [5x5 double] [5x5 double] [5x5 double] [5x5 double] [5x5 double] [5x5 double] [5x5 double]
- disp(sum(reshape(cell2mat(box2{1, 1, 1}), 5, 5, []), 3))
- % -0.2675 -3.1187 2.2361 1.7025 0.8923
- % 1.9458 -3.8915 2.5633 1.9151 6.2906
- % -0.7282 2.9414 -4.2599 6.6166 1.5368
- % -6.4995 0.6097 0.4701 0.1814 1.4697
- % 1.7196 -1.9204 -6.1786 2.0501 0.8797
- box2_sum = cellfun(@(x) sum(reshape(cell2mat(x), 5, 5, []), 3), box2, 'UniformOutput', false);
- disp(box2_sum{1, 1, 1})
- % -0.2675 -3.1187 2.2361 1.7025 0.8923
- % 1.9458 -3.8915 2.5633 1.9151 6.2906
- % -0.7282 2.9414 -4.2599 6.6166 1.5368
- % -6.4995 0.6097 0.4701 0.1814 1.4697
- % 1.7196 -1.9204 -6.1786 2.0501 0.8797
Advertisement
Add Comment
Please, Sign In to add comment