docstr: Returns the Probability Density Function of the distribution.
  
  Returns
  -------
  function: The probability density function of the distribution
  
  Examples
  --------
  >>> import numpy as np
  >>> from scipy.special import beta
  >>> from pgmpy.factors.distributions import CustomDistribution
  # Two variable dirichlet distribution with alpha = (1, 2)
  >>> def dirichlet_pdf(x, y):
  ...     return (np.power(x, 1) * np.power(y, 2)) / beta(x, y)
  >>> dirichlet_dist = CustomDistribution(variables=['x', 'y'],
  ...                                     distribution=dirichlet_pdf)
  >>> dirichlet_dist.pdf()
  <function __main__.diri_pdf>
docstr_tok: ["Returns","the","Probability","Density","Function","of","the","distribution",".","Returns","--","--","--","-","function",":","The","probability","density","function","of","the","distribution","Examples","--","--","--","--",">",">",">","import","numpy","as","np",">",">",">","from","scipy.special","import","beta",">",">",">","from","pgmpy.factors.distributions","import","CustomDistribution","#","Two","variable","dirichlet","distribution","with","alpha","=","(","1",",","2",")",">",">",">","def","dirichlet_pdf","(","x",",","y",")",":","...","return","(","np.power","(","x",",","1",")","*","np.power","(","y",",","2",")",")","\/","beta","(","x",",","y",")",">",">",">","dirichlet_dist","=","CustomDistribution","(","variables=","[","'","x","'",",","'","y","'","]",",","...","distribution=dirichlet_pdf",")",">",">",">","dirichlet_dist.pdf","(",")","<","function","__main__.diri_pdf",">"]
code: def pdf(self):
      """
      Returns the Probability Density Function of the distribution.
  
      Returns
      -------
      function: The probability density function of the distribution
  
      Examples
      --------
      >>> import numpy as np
      >>> from scipy.special import beta
      >>> from pgmpy.factors.distributions import CustomDistribution
      # Two variable dirichlet distribution with alpha = (1, 2)
      >>> def dirichlet_pdf(x, y):
      ...     return (np.power(x, 1) * np.power(y, 2)) / beta(x, y)
      >>> dirichlet_dist = CustomDistribution(variables=['x', 'y'],
      ...                                     distribution=dirichlet_pdf)
      >>> dirichlet_dist.pdf()
      <function __main__.diri_pdf>
      """
      return self._pdf
  
imports: import numpy
  from scipy import integrate
  from pgmpy.factors.distributions import BaseDistribution
label_desc: Use image node_id 2 for calling the CustomDistribution obj's underlying member method code with example usage: obj.pdf() and returns: self