2016b fitlm giving me error "Undefined function or variable 'istall'."

I recently upgraded to MatLab 2016b, and a script that worked fine in 2016a is now giving me issues. In particular, fitlm(x,y) is giving me the error "Undefined function or variable 'istall'." Thanks in advance.
% CODE
x = [1 2 3 4 5 6 7 8 9 10];
y = [1 4 9 16 25 36 48 64 91 99];
test = fitlm(x,y);
% OUTPUT
Undefined function or variable 'istall'.
Error in classreg.regr.TermsRegression.createFormula (line 621)
isTall = istall(X);
Error in LinearModel.createFormula (line 1367)
formula = classreg.regr.TermsRegression.createFormula(supplied,modelDef, ...
Error in LinearModel.fit (line 1203)
model.Formula = LinearModel.createFormula(supplied,modelDef,X, ...
Error in fitlm (line 117)
model = LinearModel.fit(X,varargin{:});

2 个评论

Can you post the results of
which -all istall
which -all fitlm
I have the same problem (istall not found).
>> ver('matlab')
----------------------------------------------------------------------------------------------------
MATLAB Version: 9.1.0.441655 (R2016b)
MATLAB License Number: ••••••
Operating System: Microsoft Windows 7 Professional Version 6.1 (Build 7601: Service Pack 1)
Java Version: Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
----------------------------------------------------------------------------------------------------
MATLAB Version 9.1 (R2016b)
>> which -all istall
'istall' not found.
>> which -all fitlm
C:\Program Files\MATLAB\R2016b\toolbox\stats\classreg\fitlm.m
Edit: Very dirty workaround (works if you're not working with tall arrays): Add this function to your path:
function out = istall(varargin)
out = false;

请先登录,再进行评论。

回答(2 个)

Hmm I could not reproduce your issues. One possibility is that the error comes due to corrupt path or installation. Have you tried restore your path settings? If no, it's worth a try.
If it allows please follow the steps below to restore search path to its factory-installed state.
1. Execute the commands:
restoredefaultpath
rehash toolboxcache
2. Execute your code:
x = [1 2 3 4 5 6 7 8 9 10];
y = [1 4 9 16 25 36 48 64 91 99];
test = fitlm(x,y);
If this works fine, then execute the following command to save the path
savepath

1 个评论

istall is a MATLAB function introduced in R2016b.
If you installed successfully and the path is correct, it should be located in
matlabInstallDir\toolbox\matlab\bigdata\istall.m

请先登录,再进行评论。

In my case, as @Kojiro suggested, the file
'istall.m'
did exist in the directory
'matlabInstallDir\toolbox\matlab\bigdata'
I added it manually using 'addpath()' and now fitglm works for me.

类别

帮助中心File Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by