code: def chisquare(df, size=None, dtype=None, device=None):
      r"""Draw samples from a chi-square distribution.
  
      When `df` independent random variables, each with standard normal
      distributions (mean 0, variance 1), are squared and summed, the
      resulting distribution is chi-square (see Notes).  This distribution
      is often used in hypothesis testing.
  
      Parameters
      ----------
      df : float or ndarray of floats
           Number of degrees of freedom, must be > 0.
      size : int or tuple of ints, optional
          Output shape.  If the given shape is, e.g., ``(m, n, k)``, then
          ``m * n * k`` samples are drawn.  If size is ``None`` (default),
          a single value is returned if ``df`` is a scalar.  Otherwise,
          ``np.array(df).size`` samples are drawn.
      dtype : {'float16', 'float32', 'float64'}, optional
          Data type of output samples. Default is 'float32'.
      device : Device, optional
          Device context of output. Default is current device.
  
      Returns
      -------
      out : ndarray or scalar
          Drawn samples from the parameterized `chi-square distribution` [1]_.
  
      Raises
      ------
      ValueError
          When `df` <= 0 or when an inappropriate `size`
          is given.
  
      Notes
      -----
      The variable obtained by summing the squares of `df` independent,
      standard normally distributed random variables:
  
      .. math:: Q = \sum_{i=0}^{\mathtt{df}} X^2_i
  
      is chi-square distributed, denoted
  
      .. math:: Q \sim \chi^2_k.
  
      The probability density function of the chi-squared distribution is
  
      .. math:: p(x) = \frac{(1/2)^{k/2}}{\Gamma(k/2)}
                       x^{k/2 - 1} e^{-x/2},
  
      where :math:`\Gamma` is the gamma function,
  
      .. math:: \Gamma(x) = \int_0^{-\infty} t^{x - 1} e^{-t} dt.
  
      References
      ----------
      .. [1] NIST "Engineering Statistics Handbook"
             https://www.itl.nist.gov/div898/handbook/eda/section3/eda3666.htm
  
      Examples
      --------
      >>> np.random.chisquare(2,4)
      array([ 1.89920014,  9.00867716,  3.13710533,  5.62318272]) # random
      """
      return _mx_nd_np.random.chisquare(
          df, size=size, dtype=dtype, device=device
      )
  
imports: from ..ndarray import numpy
  from ..random import seed
  from ..util import wrap_ctx_to_device_func
label_desc: Use image node_id 20 for calling a global function with example usage: chisquare(df, size, dtype, device) and returns: _mx_nd_np