code: def test_prod(self):
      pdf = pd.DataFrame(
          {
              "A": [1, 2, 1, 2, 1],
              "B": [3.1, 4.1, 4.1, 3.1, 0.1],
              "C": ["a", "b", "b", "a", "c"],
              "D": [True, False, False, True, False],
              "E": [-1, -2, 3, -4, -2],
              "F": [-1.5, np.nan, -3.2, 0.1, 0],
              "G": [np.nan, np.nan, np.nan, np.nan, np.nan],
          }
      )
      psdf = ps.from_pandas(pdf)
  
      for n in [0, 1, 2, 128, -1, -2, -128]:
          self._test_stat_func(
              lambda groupby_obj: groupby_obj.prod(
                  numeric_only=True, min_count=n
              ),
              check_exact=False,
          )
          self.assert_eq(
              pdf.groupby("A")
              .prod(min_count=n, numeric_only=True)
              .sort_index(),
              psdf.groupby("A").prod(min_count=n).sort_index(),
              almost=True,
          )
  
file_path: spark/python/pyspark/pandas/tests/groupby/test_stat_prod.py
imports: import unittest
  import numpy
  import pandas
  from pyspark import pandas
  from pyspark.testing.pandasutils import PandasOnSparkTestCase
  from pyspark.pandas.tests.groupby.test_stat import GroupbyStatTestingFuncMixin
label_desc: Use image node_id 3 for calling the ProdTestsMixin obj's underlying member method code with example usage: obj.test_prod() without return types