任何人都知道为什么这不起作用?我正在尝试运行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
Run Code Online (Sandbox Code Playgroud)
我收到此错误"parfor中的变量MeanIV无法归类."
这很可能就是这条线
dated.MeanIV = double(MeanIV)
Run Code Online (Sandbox Code Playgroud)
那就是问题所在.
parfor将尝试"切片" MeanIV,即将单个行发送给不同的工作人员.但是,在该dated行,您需要整个数组.
end在parfor循环之后移动线,它将起作用.