code: def test_higher_rank_samples(self):
      running_moments = sample_stats.RunningCentralMoments.from_shape(
          shape=(2, 2), moment=np.arange(5) + 1
      )
      for sample in range(5):
          running_moments = running_moments.update(
              tf.ones((2, 2)) * sample
          )
      zeroth_moment, var, skew, kur, fifth_moment = self.evaluate(
          running_moments.moments()
      )
      self.assertAllClose(tf.zeros((2, 2)), zeroth_moment, rtol=1e-6)
      self.assertAllClose(tf.ones((2, 2)) * 2, var, rtol=1e-6)
      self.assertAllClose(tf.zeros((2, 2)), skew, rtol=1e-6)
      self.assertAllClose(tf.ones((2, 2)) * 6.8, kur, rtol=1e-6)
      self.assertAllClose(tf.zeros((2, 2)), fifth_moment, rtol=1e-6)
  
imports: from absl.testing import parameterized
  import numpy
  import scipy.stats
  import tensorflow.compat.v2
  from tensorflow_probability.python.experimental.stats import sample_stats
  from tensorflow_probability.python.internal import test_util
  from tensorflow_probability.python.mcmc import diagnostic
label_desc: Use image node_id 4 for calling the RunningCentralMomentsTest obj's underlying member method code with example usage: obj.test_higher_rank_samples() without return types