class_docstr: Splitter utilized to monitor nominal features in regression tasks.
  
  As the monitored feature is nominal, it already has well-defined partitions. Hence,
  this splitter simply keeps the split-enabling target statistics for each incoming
  category.
class_docstr_tok: ["Splitter","utilized","to","monitor","nominal","features","in","regression","tasks",".","As","the","monitored","feature","is","nominal",",","it","already","has","well-defined","partitions",".","Hence",",","this","splitter","simply","keeps","the","split-enabling","target","statistics","for","each","incoming","category","."]
code: def update(self, att_val, target_val, w):
      if att_val is None or w is None:
          return
      else:
          try:
              estimator = self._statistics[att_val]
          except KeyError:
              if isinstance(target_val, dict):  # Multi-target case
                  self._statistics[att_val] = VectorDict(
                      default_factory=functools.partial(Var)
                  )
                  self._update_estimator = (
                      self._update_estimator_multivariate
                  )
              else:
                  self._statistics[att_val] = Var()
              estimator = self._statistics[att_val]
          self._update_estimator(estimator, target_val, w)
  
file_path: river/river/tree/splitter/nominal_splitter_reg.py
imports: from __future__ import annotations
  import functools
  from river.stats import Var
  from river.utils import VectorDict
  from ..utils import BranchFactory
  from .base import Splitter
label_desc: Use image node_id 5 for calling the NominalSplitterReg obj's underlying member method code with example usage: obj.update(att_val, target_val, w) without return types