大家好!
我已经看了几个关于如何转换for循环到parfor的例子,但由于某些原因,我不能让我的工作。我提供了一个例子,我有什么工作在我的for循环下面和我的注意在parfor循环。我已经有一段时间没有使用parfors了,所以如果有人能帮助我,我将非常感谢。
为j = 1: N
j
清晰的D;
[signal fs] = audioread(strcat(S(j)).folder,' / 'S (j) . name));
信号=信号(:1);
D (: 1) = spectralCentroid(信号,fs);
D (: 2) = abs (spectralSlope(信号,fs));
D = D / max (D);
D(任何(isnan (D), 2 ), :) = [];
结束
parforj = 1: N
j
[signal fs] = audioread(strcat(S(j)).folder,' / 'S (j) . name));
信号=信号(:1);
D {j} (: 1) = spectralCentroid(信号,fs);
D {j} (:, 2) = abs (spectralSlope(信号,fs));
D {j}(任何(isnan (D {j}), 2),:);
结束
如果我注释掉,后者不会运行
D {j}(任何(isnan (D {j}), 2),:);
直到我在parfor玩得开心,然后在直接的窗口运行下面的程序
D{1}(任何(isnan (D {1}), 2 ),:) = [];
它的工作原理。我不知道为什么。
谢谢你的帮助!