The source code for the parfor-loop could not be found

21 次查看(过去 30 天)
Hi. I'm using the parfor in order to change some labels name:
Data = cell(1, length(DirList));
numberOfDbExamples = length(DirList);
parfor k = 1:numberOfDbExamples
Data{k} = load(fullfile(Folder, DirList(k).name));
[newLabelNames, newMask] = changeLabelNames(Data{k}.labelNames, Data{k}.mask);
Data{k}.labelNames = newLabelNames;
Data{k}.mask = newMask;
end
I get this error:
The source code (C:----) for the parfor-loop that is trying to execute on the worker could not be found.
Caused by:
Undefined function changeLabelNames for input arguments of type table.
Error using remoteParallelFunction
Do you have an idea of how fix it?
  3 个评论
John
John 2022-9-30
The function is stored as changeLabelNames.m and it is located in the same folder of the script.
Mehdi
Mehdi 2023-1-20
can you explain how you solved this problem? I faced similar error!

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2022-9-30
  6 个评论
Walter Roberson
Walter Roberson 2023-1-20
@Mehdi I just noticed your https://www.mathworks.com/matlabcentral/answers/1897595-why-receive-error-integrand-output-size-does-not-match-the-input-size?s_tid=srchtitle in which you are expecting that your function might return a constant and so not automatically vectorized by matlabFunction . There are better ways of dealing with that situation.

请先登录,再进行评论。

更多回答(1 个)

John
John 2023-1-21
I did something similar to what Walter mentioned, but I don't remember exactly.

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by