Source code for naginterfaces.library.examples.correg.glm_normal_ex

#!/usr/bin/env python3
"``naginterface.library.correg.glm_normal`` Python Example."

# NAG Copyright 2017-2019.

# pylint: disable=invalid-name,too-many-locals

from naginterfaces.library import correg

[docs]def main(): """ Example for :func:`naginterfaces.library.correg.glm_normal`. Fits a generalized linear model with Normal errors. >>> main() naginterfaces.library.correg.glm_normal Python Example Results. Fits a generalized linear model with Normal errors. Fitted model summary: RSS is 3.872e-01 Degrees of freedom 3 Term Estimate Standard Error Variable: 0 -2.387e-02 2.779e-03 Variable: 1 6.381e-02 2.638e-03 """ print('naginterfaces.library.correg.glm_normal Python Example Results.') print('Fits a generalized linear model with Normal errors.') # The observations: x = [ [1.], [2.], [3.], [4.], [5.], ] # Other parameters for the fit: link = 'Reciprocal' isx = [1] y = [ 25., 10., 6., 4., 3., ] tol = 5.e-5 eps = 1.e-6 fit = correg.glm_normal( x, isx, y, link=link, tol=tol, eps=eps, ) print('Fitted model summary:') print('RSS is {:.3e}'.format(fit.rss)) print('Degrees of freedom {:d}'.format(fit.idf)) print('Term' + ' '*9 + 'Estimate' + ' '*3 + 'Standard Error') for i, b_i in enumerate(fit.b): print('Variable:' + ' '*2 + '{:d} {:.3e} {:.3e}'.format( i, b_i, fit.se[i] ))
if __name__ == '__main__': import doctest import sys sys.exit( doctest.testmod( None, verbose=True, report=False, optionflags=doctest.REPORT_NDIFF, ).failed )