class_docstr: A multivariate t-distributed random variable.
  
  The `loc` parameter specifies the location. The `shape` parameter specifies
  the positive semidefinite shape matrix. The `df` parameter specifies the
  degrees of freedom.
  
  In addition to calling the methods below, the object itself may be called
  as a function to fix the location, shape matrix, and degrees of freedom
  parameters, returning a "frozen" multivariate t-distribution random.
  
  Methods
  -------
  ``pdf(x, loc=None, shape=1, df=1, allow_singular=False)``
      Probability density function.
  ``logpdf(x, loc=None, shape=1, df=1, allow_singular=False)``
      Log of the probability density function.
  ``rvs(loc=None, shape=1, df=1, size=1, random_state=None)``
      Draw random samples from a multivariate t-distribution.
  
  Parameters
  ----------
  x : array_like
      Quantiles, with the last axis of `x` denoting the components.
  %(_mvt_doc_default_callparams)s
  %(_doc_random_state)s
  
  Notes
  -----
  %(_mvt_doc_callparams_note)s
  The matrix `shape` must be a (symmetric) positive semidefinite matrix. The
  determinant and inverse of `shape` are computed as the pseudo-determinant
  and pseudo-inverse, respectively, so that `shape` does not need to have
  full rank.
  
  The probability density function for `multivariate_t` is
  
  .. math::
  
      f(x) = \frac{\Gamma(\nu + p)/2}{\Gamma(\nu/2)\nu^{p/2}\pi^{p/2}|\Sigma|^{1/2}}
             \exp\left[1 + \frac{1}{\nu} (\mathbf{x} - \boldsymbol{\mu})^{\top}
             \boldsymbol{\Sigma}^{-1}
             (\mathbf{x} - \boldsymbol{\mu}) \right]^{-(\nu + p)/2},
  
  where :math:`p` is the dimension of :math:`\mathbf{x}`,
  :math:`\boldsymbol{\mu}` is the :math:`p`-dimensional location,
  :math:`\boldsymbol{\Sigma}` the :math:`p \times p`-dimensional shape
  matrix, and :math:`\nu` is the degrees of freedom.
  
  .. versionadded:: 1.6.0
  
  Examples
  --------
  >>> import matplotlib.pyplot as plt
  >>> from scipy.stats import multivariate_t
  >>> x, y = np.mgrid[-1:3:.01, -2:1.5:.01]
  >>> pos = np.dstack((x, y))
  >>> rv = multivariate_t([1.0, -0.5], [[2.1, 0.3], [0.3, 1.5]], df=2)
  >>> fig, ax = plt.subplots(1, 1)
  >>> ax.set_aspect('equal')
  >>> plt.contourf(x, y, rv.pdf(pos))
docstr: Adjust quantiles array so that last axis labels the components of
  each data point.
docstr_tok: ["Adjust","quantiles","array","so","that","last","axis","labels","the","components","of","each","data","point","."]
code: def _process_quantiles(self, x, dim):
      """
      Adjust quantiles array so that last axis labels the components of
      each data point.
  
      """
      x = np.asarray(x, dtype=float)
      if x.ndim == 0:
          x = x[np.newaxis]
      elif x.ndim == 1:
          if dim == 1:
              x = x[:, np.newaxis]
          else:
              x = x[np.newaxis, :]
      return x
  
imports: import numpy
  import scipy.linalg
  from scipy._lib import doccer
  from scipy.special import gammaln
  from scipy._lib._util import check_random_state
  from scipy.stats import mvn
label_desc: Use image node_id 7 for calling the multivariate_t_gen obj's underlying member method code with example usage: obj._process_quantiles(x, dim) and returns: x