Transferring Data between Cell Arrays

5 次查看(过去 30 天)
Hi,
Simple question, is there a more efficient method of transferring batches data from one cell array to another.
B{1:5,1:8} = A{6:11,1:8};
Operations like this don't work, but I am hoping to find a method similar to this that does not involve for-loops, which is what I am currently doing.
for i = 1:5
for j = 1:8
B{i,j} = A{5+i,j};
end
end

采纳的回答

the cyclist
the cyclist 2013-3-5
Using the curly brackets is going to look into the contents. Instead, use parentheses to just assign the cells themselves:
B(1:5,1:8) = A(6:10,1:8);
(I also corrected your size mismatch.)

更多回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2013-3-5
clear B
A=num2cell(rand(20))
B(1:6,1:8) = A(6:11,1:8);

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by