pygam#
Module: pygam#
Helper functions for GAMs#
This module contains functions used for the GAM lab of ISLP.
Functions#
- ISLP.pygam.anova(*models, scale=None, useF=True)#
- Compute an ANOVA table for a sequence of GAM models. - Parameters:
- modelsGAMs
- Sequence of fitted GAM models. 
- scalefloat
- Estimate of noise level, defaults to None. 
- useFbool
- If True use an F distribution for p-value computation based on degrees of freedom of largest model. Otherwise, use chi-squared. 
 
- Returns:
- anova_table: pd.DataFrame
 
 - Notes - Implicitly assumes models are nested, fit on the same (X,y) with the same sample weights. 
- ISLP.pygam.approx_lam(X, term, df, W=None, CUTOFF=1000000000000.0)#
- For a given term, try to find multiplier of penalty to achieve a specified degrees of freedom. - Parameters:
- Xarray-like of shape (n_samples, n_features)
- Input dataset 
- termTerm
- Term for which we which to scale penalty 
- dffloat
- Desired degrees of freedom 
- Warray-like (optional)
- Diagonal weight matrix. 
- CUTOFFfloat
- Search for solution in interval [0,CUTOFF]. 
 
- Returns:
- lamarray-like
- Rescaled lam values. 
 
 - Notes - The term must be part of a GAM that has already been fit. 
- ISLP.pygam.degrees_of_freedom(X, term, lam=None, W=None)#
- For a given term, try to find multiplier of penalty to achieve a specified degrees of freedom. - Parameters:
- Xarray-like of shape (n_samples, n_features)
- Input dataset 
- termTerm
- Term for which we which to scale penalty. 
- lamarray-like (optional)
- Values at which to approximate degrees of freedom. If None, defaults to term.lam 
- Warray-like (optional)
- Diagonal weight matrix. 
 
- Returns:
- dffloat
- Degrees of freedom as computed by the trace of the smoother matrix. 
 
 - Notes - The term must be part of a GAM that has already been fit. 
- ISLP.pygam.plot(gam, term_idx, quantiles=[0.025, 0.975], ax=None, levels=None, partial_kwargs={'c': 'b', 'linewidth': 4}, err_kwargs={'c': 'r', 'linewidth': 4, 'ls': '--'}, bar_kwargs={'capsize': 10})#
- Plot the fitted function of a term in a GAM model. - Parameters:
- gamGAM
- A fitted GAM model. 
- term_idxint
- Which term in the GAM to plot? 
- quantiles[float, float], default=[0.025, 0.0975]
- Which quantiles for pointwise confidence bands? 
- axmatplotlib axes, optional
- levelssequence
- For categorical features, which indices to include in plot. Defaults to all levels. 
- partial_kwargsdict
- Keyword arguments for partial dependence plot for continuous variables. 
- err_kwargsdict
- Keyword arguments for pointwise confidence bands for continuous variables. 
- bar_kwargsdict
- Keyword arguments for barplot for for categorical variables. 
 
- Returns:
- axmatplotlib axes
- Axes with partial dependence plot added. 
 
 
