Variable classification in Parfor loop
1 次查看(过去 30 天)
显示 更早的评论
Hi all -
I know this type of question has been asked many times, but I simply can't figure out how to translate my code to work. Very simply: - I have a large cell called "masterData", which merely holds my final data - In a parfor loop, I am performing an analysis that yields three large arrays rt, xo, and no. - I'd like to store the three large arrays in the masterData cell together with the sample name:
masterData=cell(20,1);
parfor i=1:20
%analysis here. Yields rt, xo, no
masterData{i,1:4}={name rt xo no};
end
I get the error "Error: The variable masterData in a parfor cannot be classified." I'm sure this is an easy fix relating to how masterData is populated. Any help is appreciated. Thanks,
Tristan
0 个评论
采纳的回答
Sean de Wolski
2013-6-26
rt = 3;
xo = pi;
no = 2;
name = 'Sean';
masterData=cell(20,4);
parfor i=1:20
%analysis here. Yields rt, xo, no
masterData(i,:)={name rt xo no};
end
You index into masterData with columns 1:4 and curly braces yet the preallocated cell is a 20x1.
The 1:4 cannot be used because of this:
Form of Indexing. Within the list of indicesfor a sliced variable, one of these indices is of the form i, i+k, i-k, k+i,or k-i, where i is the loopvariable and k is a constant or a simple (nonindexed)broadcast variable; and every other index is a constant, a simplebroadcast variable, colon, or end.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Startup and Shutdown 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!