code: def sample_n(n, df, loc, scale, batch_shape, dtype, seed):
      """Draw n samples from a Student T distribution.
  
      Note that `scale` can be negative or zero.
      The sampling method comes from the fact that if:
        X ~ Normal(0, 1)
        Z ~ Chi2(df)
        Y = X / sqrt(Z / df)
      then:
        Y ~ StudentT(df)
  
      Args:
        n: int, number of samples
        df: Floating-point `Tensor`. The degrees of freedom of the
          distribution(s). `df` must contain only positive values.
        loc: Floating-point `Tensor`; the location(s) of the distribution(s).
        scale: Floating-point `Tensor`; the scale(s) of the distribution(s). Must
          contain only positive values.
        batch_shape: Callable to compute batch shape
        dtype: Return dtype.
        seed: PRNG seed; see `tfp.random.sanitize_seed` for details.
  
      Returns:
        samples: a `Tensor` with prepended dimensions `n`.
      """
      normal_seed, gamma_seed = samplers.split_seed(
          seed, salt="student_t"
      )
      shape = ps.concat([[n], batch_shape], 0)
  
      normal_sample = samplers.normal(
          shape, dtype=dtype, seed=normal_seed
      )
      df = df * tf.ones(batch_shape, dtype=dtype)
      gamma_sample = gamma_lib.random_gamma(
          [n], concentration=0.5 * df, rate=0.5, seed=gamma_seed
      )
      samples = normal_sample * tf.math.rsqrt(gamma_sample / df)
      return samples * scale + loc
  
imports: import functools
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import identity
  from tensorflow_probability.python.bijectors import softplus
  from tensorflow_probability.python.distributions import distribution
  from tensorflow_probability.python.distributions import gamma
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import custom_gradient
  from tensorflow_probability.python.internal import distribution_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import parameter_properties
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import samplers
  from tensorflow_probability.python.internal import special_math
  from tensorflow_probability.python.internal import tensor_util
  from tensorflow_probability.python.math import generic
  from tensorflow_probability.python.math import gradient
  from tensorflow_probability.python.math import numeric
  from tensorflow_probability.python.math import special
label_desc: Use image node_id 1 for calling a global function with example usage: sample_n(n, df, loc, scale, batch_shape, dtype, seed) and returns: unknown