Writing inside cell array

1 次查看(过去 30 天)
Let "f" be a function that returns a 3 by 1 cell. I have to evaluate "f" multiple times, say "N", and I would like to store the results in just one 3 by 2 cell "y".
My solution is the following and is based on a temporary 3 by 1 cell "ytemp". Is there a way to obtain the same result without involving "ytemp"?
y = cell(3, N);
for i = 1 : N
ytemp = f(i);
y(:, i) = ytemp(:);
end

采纳的回答

Jon
Jon 2023-5-17
Is this what you are asking for?
y = cell(3, N);
for i = 1 : N
y(:, i) = f(i);
end

更多回答(1 个)

Sulaymon Eshkabilov
If understood correctly your question, here is how it can be solved:
t = randn(1);
g = sin(2*pi*t);
f = repmat(g, 1,100)+rand(size(t));
N = 100;
y = cell(1,N);
for i = 1 : N
y{1,i} = f(i);
end
y
y = 1×100 cell array
Columns 1 through 13 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 14 through 26 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 27 through 39 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 40 through 52 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 53 through 65 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 66 through 78 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 79 through 91 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} Columns 92 through 100 {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]} {[-0.6299]}

类别

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

标签

Community Treasure Hunt

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

Start Hunting!

Translated by