'Poisson model probability mass function
Parameters
X : array-like
`X` is the linear predictor of the model.  See notes.
Returns
pdf : ndarray
The value of the Poisson probability mass function, PMF, for each
point of X.
Notes
The PMF is defined as
.. math:: \frac{e^{-\lambda_{i}}\lambda_{i}^{y_{i}}}{y_{i}!}
where :math:`\lambda` assumes the loglinear model. I.e.,
.. math:: \ln\lambda_{i}=x_{i}\beta
The parameter `X` is :math:`x_{i}\beta` in the above formula.'

def pdf(self, X):

    y = self.endog
    return np.exp(stats.poisson.logpmf(y, np.exp(X)))
