code: def test_pct_change(self):
      pdf = pd.DataFrame(
          {
              "a": [1, 2, 3, 2],
              "b": [4.0, 2.0, 3.0, 1.0],
              "c": [300, 200, 400, 200],
          },
          index=np.random.rand(4),
      )
      pdf.columns = pd.MultiIndex.from_tuples(
          [("a", "x"), ("b", "y"), ("c", "z")]
      )
      psdf = ps.from_pandas(pdf)
  
      self.assert_eq(
          psdf.pct_change(2), pdf.pct_change(2), check_exact=False
      )
      self.assert_eq(
          psdf.pct_change().sum(),
          pdf.pct_change().sum(),
          check_exact=False,
      )
  
imports: import unittest
  import numpy
  import pandas
  from pyspark.sql import functions
  from pyspark import pandas
  from pyspark.testing.pandasutils import ComparisonTestBase
  from pyspark.testing.sqlutils import SQLTestUtils
label_desc: Use image node_id 8 for calling the FrameComputeMixin obj's underlying member method code with example usage: obj.test_pct_change() without return types