class_docstr: Splitter utilized to monitor nominal features in classification tasks.
  
  As the monitored feature is nominal, it already has well-defined partitions. Hence,
  this splitter uses dictionary structures to keep class counts for each incoming category.
class_docstr_tok: ["Splitter","utilized","to","monitor","nominal","features","in","classification","tasks",".","As","the","monitored","feature","is","nominal",",","it","already","has","well-defined","partitions",".","Hence",",","this","splitter","uses","dictionary","structures","to","keep","class","counts","for","each","incoming","category","."]
code: def cond_proba(self, att_val, target_val):
      class_dist = self._att_dist_per_class[target_val]
  
      if att_val not in class_dist:
          return 0.0
  
      value = class_dist[att_val]
      try:
          return value / sum(class_dist.values())
      except ZeroDivisionError:
          return 0.0
  
file_path: river/river/tree/splitter/nominal_splitter_classif.py
imports: from __future__ import annotations
  import collections
  from ..utils import BranchFactory
  from .base import Splitter
label_desc: Use image node_id 4 for calling the NominalSplitterClassif obj's underlying member method code with example usage: obj.cond_proba(att_val, target_val) and returns: int, unknown, int