def logpdf_link(self, link_f, y, Y_metadata=None):
<EOL>assert np.atleast_1d(link_f).shape == np.atleast_1d(y).shape<EOL>c = np.zeros_like(y)<EOL>if Y_metadata is not None and '<STR_LIT>' in Y_metadata.keys():<EOL><INDENT>c = Y_metadata['<STR_LIT>']<EOL><DEDENT>uncensored = (<NUM_LIT:1>-c)*( np.log(self.r)-np.log(link_f)+(self.r-<NUM_LIT:1>)*np.log(y) - y**self.r/link_f)<EOL>censored = -c*y**self.r/link_f<EOL>log_objective = uncensored + censored<EOL>return log_objective<EOL>
Log Likelihood Function given link(f)

.. math::
    \\ln p(y_{i}|\lambda(f_{i})) = \\alpha_{i}\\log \\beta - \\log \\Gamma(\\alpha_{i}) + (\\alpha_{i} - 1)\\log y_{i} - \\beta y_{i}\\\\
    \\alpha_{i} = \\beta y_{i}

:param link_f: latent variables (link(f))
:type link_f: Nx1 array
:param y: data
:type y: Nx1 array
:param Y_metadata: Y_metadata which is not used in poisson distribution
:returns: likelihood evaluated for this point
:rtype: float