任何人都知道为什么这不起作用?我正在尝试运行parfor循环。我可以使用一个简单的for循环来完成相同的代码,但是我需要将它与parfor用于大量数据集。
parfor n = [1:rows]
MeanIV(n,1) = mean([LastIV(n,1); BidIV(n,1);AskIV(n,1)])
if isnan(MeanIV(n)) == 1
SubIV = dated.IV(n)
MeanIV(n,1) = SubIV
else
MeanIV(n,1) = mean([LastIV(n,1); BidIV(n,1);AskIV(n,1)])
end
dated.MeanIV = double(MeanIV)
end
我收到此错误“parfor中的变量MeanIV无法归类。”
答案 0 :(得分:6)
很可能是行
dated.MeanIV = double(MeanIV)
这就是问题。
parfor
会尝试“切片”MeanIV
,即将各行发送给不同的工作人员。但是,在dated
行,您需要整个数组。
在end
循环的parfor
之后移动该行,它会起作用。