code: def __init__(self, y, mask, n_obsv, normalize, y_sum=None):
      if normalize:
          self.original_y_min, self.original_y_max = y.min(), y.max()
          self.original_y_mean = np.mean(y)
          self._y = self.normalize_y(y)
      else:
          self._y = y
  
      self._mask = mask
      self._inverse_mask_int = (~self._mask).astype(int)
      self._n_obsv = n_obsv
  
      if y_sum is None:
          self.y_sum_cache_up_to_date = False
          self._summed_y = None
      else:
          self.y_sum_cache_up_to_date = True
          self._summed_y = y_sum
  
imports: from operator import gt, le
  from typing import Any, List, Optional, Union
  import numpy
  import pandas
  from .errors import NoSplittableVariableException
  from .splitcondition import SplitCondition
label_desc: Use image node_id 1 to create a new Target object from inherited base classes: object with example: obj = Target(y, mask, n_obsv, normalize, y_sum)