Error in Generalize​dLinearMod​el.fit

2 次查看(过去 30 天)
Francisco
Francisco 2015-10-7
回答: Francisco 2015-10-8
I'm trying to fit a GLM and I get a weird error I cannot find the reason for. The error message is below. It only happens if I specify distribution 'gamma' (which wouldbe the appropriate one) or 'inverse gaussian', but it does not happen for distributions 'normal' or 'poisson' (although they wouln't be the ones to use). There are no NaNs either in the predictors or the response. The data tables are too large to include here.
Any clues?
Thanks
Error using sumskipnan (line 164)
weighted sumskipnan requires sumskipnan_mex
Error in var (line 84)
[y,n,ssq] = sumskipnan(x,DIM,W);
Error in GeneralizedLinearModel/logLikelihoodNull (line 954)
b0 = var(model.y_r,model.w_r) ./ mu0;
Error in classreg.regr.ParametricRegression/postFit (line 367)
model.LogLikelihoodNull = logLikelihoodNull(model);
Error in classreg.regr.TermsRegression/postFit (line 370)
model = postFit@classreg.regr.ParametricRegression(model);
Error in GeneralizedLinearModel/postFit (line 891)
model = postFit@classreg.regr.TermsRegression(model);
Error in classreg.regr.FitObject/doFit (line 220)
model = postFit(model);
Error in GeneralizedLinearModel.fit (line 1302)
model = doFit(model);

回答(1 个)

Francisco
Francisco 2015-10-8
Found the cause (I think). There is a function in the NaN-toolbox called 'var', same as MATLAB function for variance, and apparently it takes precedence. 'var' (in NaNtoolbox) calls 'sumskipnan' and causes the error. Still, both 'sumskipnan.m' and 'sumskipnan_mex' WERE there in the same folder, so there shouldn't be any error. I deleted the NaNToolbox and the error went away... for now.

产品

Community Treasure Hunt

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

Start Hunting!

Translated by