code: def testStudentEntropy(self):
      df_v = np.array([[2.0, 3.0, 7.0]])  # 1x3
      mu_v = np.array([[1.0, -1, 0]])  # 1x3
      sigma_v = np.array([[1.0, -2.0, 3.0]]).T  # transposed => 3x1
      student = student_t.StudentT(df=df_v, loc=mu_v, scale=sigma_v)
      ent = student.entropy()
      ent_values = self.evaluate(ent)
  
      # Help scipy broadcast to 3x3
      ones = np.array([[1, 1, 1]])
      sigma_bc = np.abs(sigma_v) * ones
      mu_bc = ones.T * mu_v
      df_bc = ones.T * df_v
      if not stats:
          return
      expected_entropy = stats.t.entropy(
          np.reshape(df_bc, [-1]),
          loc=np.reshape(mu_bc, [-1]),
          scale=np.reshape(sigma_bc, [-1]),
      )
      expected_entropy = np.reshape(expected_entropy, df_bc.shape)
      self.assertAllClose(expected_entropy, ent_values)
  
imports: import importlib
  import math
  import numpy
  from tensorflow.python.eager import backprop
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import random_seed
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn_ops
  from tensorflow.python.ops.distributions import student_t
  from tensorflow.python.platform import test
  from tensorflow.python.platform import tf_logging
label_desc: Use image node_id 4 for calling the StudentTTest obj's underlying member method code with example usage: obj.testStudentEntropy() without return types