class_docstr: Extend DeepchecksFilter class for feature range based filters.
  
  Parameters
  ----------
  filters: dict, default: None
      A dictionary in containing feature names as keys and the filtering range as value.
  filter_functions : List[Callable], default: None
      List of functions that receive a DataFrame and return a filter on it. If None, no filter is applied
  label : str, default = ''
      Name of the filter
docstr: Add a filter by intersecting it with existing filter.
docstr_tok: ["Add","a","filter","by","intersecting","it","with","existing","filter","."]
code: def add_filter(
      self,
      feature_name: str,
      threshold: float,
      greater_then: bool = True,
  ):
      """Add a filter by intersecting it with existing filter."""
      if greater_then:
          filter_func = [lambda df, a=threshold: df[feature_name] > a]
          if feature_name in self.filters.keys():
              original_range = self.filters[feature_name]
              self.filters[feature_name] = [
                  max(threshold, original_range[0]),
                  original_range[1],
              ]
          else:
              self.filters[feature_name] = [threshold, np.inf]
      else:
          filter_func = [lambda df, a=threshold: df[feature_name] <= a]
          if feature_name in self.filters.keys():
              original_range = self.filters[feature_name]
              self.filters[feature_name] = [
                  original_range[0],
                  min(threshold, original_range[1]),
              ]
          else:
              self.filters[feature_name] = [np.NINF, threshold]
      self.filter_functions += filter_func
      return self
  
imports: from collections import defaultdict
  from copy import deepcopy
  from typing import Callable, List, Optional, Tuple, Union
  import numpy
  import pandas
  from sklearn.tree import _tree
  from deepchecks.tabular.dataset import Dataset
  from deepchecks.utils.strings import format_number
  from deepchecks.utils.typing import Hashable
label_desc: Use image node_id 2 for calling the DeepchecksBaseFilter obj's underlying member method code with example usage: obj.add_filter(feature_name, threshold, greater_then) and returns: self