MATLAB: Fitlm on timetable: error message

MATLAB

I try to run fitlm on a time table. I checked dependent and independent variables and got following outputs
ans =
2.5017
1.8388
1.8418
2.0561
5.0655
ans =
17.4631
19.5389
16.5552
15.0083
11.4510
But when I try to run fitlm, I got a following error message:
Error using classreg.regr.FormulaProcessor (line 384)
The model formula contains names not recognized as predictor or response names.
Error in classreg.regr.LinearFormula (line 48)
f = f@classreg.regr.FormulaProcessor(varargin{:});
Error in classreg.regr.TermsRegression.createFormula (line 699)
formula = classreg.regr.LinearFormula(modelDef,varNames,'',intercept,link);
Error in LinearModel.createFormula (line 1388)
formula = classreg.regr.TermsRegression.createFormula(supplied,modelDef, ...
Error in LinearModel.fit (line 1224)
model.Formula = LinearModel.createFormula(supplied,modelDef,X, ...
Error in fitlm (line 121)
model = LinearModel.fit(X,varargin{:});
Error in AAA (line 247)
lm2 = fitlm(T,'VAR1~VAR2');
Please advise.

Best Answer

fitlm() specifically tests for table objects, and timetables are not tables. fitlm is defined for tables, datasets, numeric arrays, and tall arrays, but not defined for timetables.
You can use timetable2table() to convert your timetable for use with fitlm.
Related Question