class_docstr: Calculate drift between the entire train and test datasets using a model trained to distinguish between them.
  
  Check fits a new model to distinguish between train and test datasets, called a Domain Classifier.
  Once the Domain Classifier is fitted the check calculates the feature importance for the domain classifier
  model. The result of the check is based on the AUC of the domain classifier model, and the check displays
  the change in distribution between train and test for the top features according to the
  calculated feature importance.
  
  Parameters
  ----------
  n_top_columns : int , default: 3
      Amount of columns to show ordered by domain classifier feature importance. This limit is used together
      (AND) with min_feature_importance, so less than n_top_columns features can be displayed.
  min_feature_importance : float , default: 0.05
      Minimum feature importance to show in the check display. Feature importance
      sums to 1, so for example the default value of 0.05 means that all features with importance contributing
      less than 5% to the predictive power of the Domain Classifier won't be displayed. This limit is used
      together (AND) with n_top_columns, so features more important than min_feature_importance can be
      hidden.
  max_num_categories_for_display: int, default: 10
      Max number of categories to show in plot.
  show_categories_by: str, default: 'largest_difference'
      Specify which categories to show for categorical features' graphs, as the number of shown categories is limited
      by max_num_categories_for_display. Possible values:
      - 'train_largest': Show the largest train categories.
      - 'test_largest': Show the largest test categories.
      - 'largest_difference': Show the largest difference between categories.
  sample_size : int , default: 10_000
      Max number of rows to use from each dataset for the training and evaluation of the domain classifier.
  random_state : int , default: 42
      Random seed for the check.
  test_size : float , default: 0.3
      Fraction of the combined datasets to use for the evaluation of the domain classifier.
  min_meaningful_drift_score : float , default 0.05
      Minimum drift score for displaying drift in check. Under that score, check will display "nothing found".
docstr: Add condition.
  
  Overall drift score, calculated as (2 * AUC - 1) for the AUC of the dataset discriminator model, is less
  than the specified value. This value is used as it scales the AUC value to the range [0, 1], where 0 indicates
  a random model (and no drift) and 1 indicates a perfect model (and completely distinguishable datasets).
  
  Parameters
  ----------
  max_drift_value : float , default: 0.25
      Maximal drift value allowed (value 0 and above)
docstr_tok: ["Add","condition",".","Overall","drift","score",",","calculated","as","(","2","*","AUC","-","1",")","for","the","AUC","of","the","dataset","discriminator","model",",","is","less","than","the","specified","value",".","This","value","is","used","as","it","scales","the","AUC","value","to","the","range","[","0",",","1","]",",","where","0","indicates","a","random","model","(","and","no","drift",")","and","1","indicates","a","perfect","model","(","and","completely","distinguishable","datasets",")",".","Parameters","--","--","--","--","--","max_drift_value",":","float",",","default",":","0.25","Maximal","drift","value","allowed","(","value","0","and","above",")"]
code: def add_condition_overall_drift_value_less_than(
      self, max_drift_value: float = 0.25
  ):
      """Add condition.
  
      Overall drift score, calculated as (2 * AUC - 1) for the AUC of the dataset discriminator model, is less
      than the specified value. This value is used as it scales the AUC value to the range [0, 1], where 0 indicates
      a random model (and no drift) and 1 indicates a perfect model (and completely distinguishable datasets).
  
      Parameters
      ----------
      max_drift_value : float , default: 0.25
          Maximal drift value allowed (value 0 and above)
      """
  
      def condition(result: dict):
          drift_score = result["domain_classifier_drift_score"]
          details = (
              f"Found drift value of: {format_number(drift_score)}, corresponding to a domain classifier "
              f'AUC of: {format_number(result["domain_classifier_auc"])}'
          )
          category = (
              ConditionCategory.PASS
              if drift_score < max_drift_value
              else ConditionCategory.FAIL
          )
          return ConditionResult(category, details)
  
      return self.add_condition(
          f"Drift value is less than {format_number(max_drift_value)}",
          condition,
      )
  
file_path: deepchecks/deepchecks/tabular/checks/train_test_validation/multivariate_drift.py
imports: from deepchecks.core import CheckResult, ConditionCategory, ConditionResult
  from deepchecks.core.check_utils.multivariate_drift_utils import run_multivariable_drift
  from deepchecks.tabular import Context, TrainTestCheck
  from deepchecks.utils.strings import format_number
label_desc: Use image node_id 3 for calling the MultivariateDrift obj's underlying member method code with example usage: obj.add_condition_overall_drift_value_less_than(max_drift_value) and returns: self, ConditionResult