docstr: median = np.median(cat_scores)
  scores = np.zeros(len(cat_scores)).astype(np.float)
  scores[cat_scores > median] = cat_scores[cat_scores > median]
  not_cat_mask = cat_scores < median if median != 0 else cat_scores <= median
  scores[not_cat_mask] = -not_cat_scores[not_cat_mask]
docstr_tok: ["median","=","np.median","(","cat_scores",")","scores","=","np.zeros","(","len","(","cat_scores",")",")",".astype","(","np.float",")","scores","[","cat_scores",">","median","]","=","cat_scores","[","cat_scores",">","median","]","not_cat_mask","=","cat_scores","<","median","if","median","!","=","0","else","cat_scores","<","=","median","scores","[","not_cat_mask","]","=","-not_cat_scores","[","not_cat_mask","]"]
code: def balance_scores_and_dont_scale(cat_scores, not_cat_scores):
      """
      median = np.median(cat_scores)
      scores = np.zeros(len(cat_scores)).astype(np.float)
      scores[cat_scores > median] = cat_scores[cat_scores > median]
      not_cat_mask = cat_scores < median if median != 0 else cat_scores <= median
      scores[not_cat_mask] = -not_cat_scores[not_cat_mask]
      """
      scores = np.zeros(len(cat_scores)).astype(np.float64)
      scores[cat_scores > not_cat_scores] = cat_scores[
          cat_scores > not_cat_scores
      ]
      scores[cat_scores < not_cat_scores] = -not_cat_scores[
          cat_scores < not_cat_scores
      ]
      return scores
  
imports: from abc import ABC, abstractmethod
  import numpy
  import pandas
  from scipy.stats import norm, rankdata
  from scattertext.Common import DEFAULT_SCALER_ALGO, DEFAULT_BETA
label_desc: Use image node_id 2 for calling the ScoreBalancer obj's underlying member method code with example usage: obj.balance_scores_and_dont_scale(cat_scores, not_cat_scores) and returns: scores