code: def test_idxmax(self):
      pser = pd.Series(data=[1, 4, 5], index=["A", "B", "C"])
      psser = ps.Series(pser)
  
      self.assertEqual(psser.idxmax(), pser.idxmax())
      self.assertEqual(
          psser.idxmax(skipna=False), pser.idxmax(skipna=False)
      )
  
      index = pd.MultiIndex.from_arrays(
          [["a", "a", "b", "b"], ["c", "d", "e", "f"]],
          names=("first", "second"),
      )
      pser = pd.Series(data=[1, 2, 4, 5], index=index)
      psser = ps.Series(pser)
  
      self.assertEqual(psser.idxmax(), pser.idxmax())
      self.assertEqual(
          psser.idxmax(skipna=False), pser.idxmax(skipna=False)
      )
  
      psser = ps.Series([])
      with self.assertRaisesRegex(ValueError, "an empty sequence"):
          psser.idxmax()
  
      pser = pd.Series(
          [1, 100, None, 100, 1, 100], index=[10, 3, 5, 2, 1, 8]
      )
      psser = ps.Series(pser)
  
      self.assertEqual(psser.idxmax(), pser.idxmax())
      self.assertEqual(
          repr(psser.idxmax(skipna=False)),
          repr(pser.idxmax(skipna=False)),
      )
  
imports: import unittest
  import numpy
  import pandas
  from pyspark import pandas
  from pyspark.testing.pandasutils import ComparisonTestBase
  from pyspark.testing.sqlutils import SQLTestUtils
label_desc: Use image node_id 7 for calling the SeriesIndexMixin obj's underlying member method code with example usage: obj.test_idxmax() without return types