cell cal from function problem
조회 수: 3 (최근 30일)
이전 댓글 표시
Hello, please i have a function whith 4 input values and 3 outputs
[output1, output2, output3] = Myfunc(input1, input2, input3, input4)
when I call Myfunc in a for loop i get a cell, the matrix of this cell is a one vector output
for j = 1 : 2
AA{j} = Myfunc(input1, input2, input3, input4)
end
BB = cell2mat(AA')
But I mus have
[output1, output2, output3] the j = 1
[output1, output2, output3] the j = 2
So the BB matrix must be a 3 columns and 2 rows. Thanks
댓글 수: 0
채택된 답변
Rik
2021년 7월 14일
If you pre-allocate the cell array you can use a comma separated list:
[input1, input2, input3, input4]=deal(rand);
AA=cell(3,2);
for n = 1 : 2
[AA{:,n}] = Myfunc(input1, input2, input3, input4);
end
BB = cell2mat(AA')
function [output1, output2, output3] = Myfunc(input1, input2, input3, input4)
output1=rand;output2=1+rand;output3=2+rand;
end
댓글 수: 3
Rik
2021년 7월 14일
If you want to covert a cell to a table, I would expect cell2table to do the trick. This wasn't specid=fied in your question, so I didn't do that in my answer.
[input1, input2, input3, input4]=deal(rand);
AA=cell(3,2);
for n = 1 : 2
[AA{:,n}] = Myfunc(input1, input2, input3, input4);
end
BB = cell2table(AA')
function [output1, output2, output3] = Myfunc(input1, input2, input3, input4)
output1=rand(1,2);output2=1+rand;output3=2+rand;
end
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!