Borrar filtros
Borrar filtros

Attempt to execute SCRIPT ' ' as a function error

13 visualizaciones (últimos 30 días)
Elle Kay
Elle Kay el 14 de Feb. de 2024
Respondida: Walter Roberson el 14 de Feb. de 2024
Hi,
I am running custom code that has worked fine for a couple of years and I'm suddenly running into the following error:
Attempt to execute SCRIPT graphics/private/adjustGridLineStyles as a function
The function above is a Matlab function, and I have nothing that shares its name.
Prior to this, I had an identical error with two other Matlab functions including the following:
Attempt to execute SCRIPT internal.stats.strCollapse as a function
So I don't think it's my code. I am on a new computer but I have it set up like the old one and I've reset paths to default. Any ideas would be helpful.
Thank you.
  3 comentarios
Elle Kay
Elle Kay el 14 de Feb. de 2024
1) It's a Matlab script, not my own
2) it is invoked 4, 5 functions into a call from my own script
3) it is not specific to that script; everytime I restart Matlab, a different script gets flagged into the same error. For instance, here is the full error relating to the strCollapse.m script:
Error using internal.stats.strCollapse
Attempt to execute SCRIPT strCollapse as a function:
/Applications/MATLAB2014b/MATLAB2014b/MATLAB_R2014b.app/toolbox/stats/stats/+internal/+stats/strCollapse.m
Error in classreg.regr.FormulaProcessor>terms2expr (line 777)
termNames{k} = internal.stats.strCollapse(varNames(ij),'*');
Error in classreg.regr.FormulaProcessor/getStr (line 519)
str = composeFormulaString(f.link,f.responseName,terms2expr(f.terms,f.varNames));
Error in classreg.regr.FormulaProcessor/processFormula (line 595)
f.str = getStr(f);
Error in classreg.regr.FormulaProcessor (line 390)
f = processFormula(f,varNames);
Error in classreg.regr.LinearFormula (line 48)
f = f@classreg.regr.FormulaProcessor(varargin{:});
Error in classreg.regr.LinearMixedFormula/processFormula (line 305)
f.FELinearFormula = classreg.regr.LinearFormula(FELinearFormulaStr,varNames);
Error in classreg.regr.LinearMixedFormula (line 184)
f = processFormula(f,varNames);
Error in GeneralizedLinearMixedModel.fit (line 2180)
model.Formula = classreg.regr.LinearMixedFormula(formula,ds.Properties.VariableNames);
Error in fitglme (line 389)
glme = GeneralizedLinearMixedModel.fit(T,formula,varargin{:});
Error in behavioralOLD_20240213 (line 341)
lm1 = fitglme(allMatT, 'choices ~ target * EP1 + target * Risk1 + Gender + (target|subject)', 'Distribution',
'Binomial', 'BinomialSize', ones(height(allMatT),1), 'Link', 'logit');
Matt J
Matt J el 14 de Feb. de 2024
I would do a clean reinstall (i.e., completely deleting all pre-existing Maltab installation folders).

Iniciar sesión para comentar.

Respuestas (1)

Walter Roberson
Walter Roberson el 14 de Feb. de 2024
This problem is caused by a corruption of the MATLAB installation, one that causes it to lose track of the internal implementation of functions. The search for the function instead finds the .m file that exists only for documentation purposes. Because the documentation .m has only comments, it is technically a script file.
There is a possibility that the system might fix itself if you do
restoredefaultpath; rehash toolboxcache
but it is common that when this sort of corruption occurs that you need to reinstall MATLAB.

Categorías

Más información sobre Introduction to Installation and Licensing en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by