'The model degree of freedom, defined as the rank of the regressor
matrix minus 1 if a constant is included.'

@property
def df_model(self):

    if (self._df_model is None):
        if (self.rank is None):
            self.rank = np_matrix_rank(self.exog)
        self._df_model = float((self.rank - self.k_constant))
    return self._df_model
