docstr: Computes the q which maximizes score (q_mle).
code: def qmle(self, observed_sum: float, expectations: np.array):
      """
      Computes the q which maximizes score (q_mle).
      """
      expected_sum = expectations.sum()
  
      # Deals with case where observed_sum = expected_sum = 0
      if observed_sum == expected_sum:
          ans = 1
      else:
          ans = observed_sum / expected_sum
  
      assert (
          np.isnan(ans) == False
      ), f"{expected_sum}, {observed_sum}, {ans}"
      return ans
  
file_path: AIF360/aif360/detectors/mdss/ScoringFunctions/Gaussian.py
imports: from aif360.detectors.mdss.ScoringFunctions.ScoringFunction import ScoringFunction
  from aif360.detectors.mdss.ScoringFunctions import optim
  import numpy
label_desc: Use image node_id 3 for calling the Gaussian obj's underlying member method code with example usage: obj.qmle(observed_sum, expectations) and returns: ans