docstr: This function predicts ``Label`` using a trained model. When ``data`` is
  None, it predicts label on the holdout set.
  
  
  Example
  -------
  >>> from pycaret.datasets import get_data
  >>> boston = get_data('boston')
  >>> from pycaret.regression import *
  >>> exp_name = setup(data = boston,  target = 'medv')
  >>> lr = create_model('lr')
  >>> pred_holdout = predict_model(lr)
  >>> pred_unseen = predict_model(lr, data = unseen_dataframe)
  
  
  estimator: scikit-learn compatible object
      Trained model object
  
  
  data : pandas.DataFrame
      Shape (n_samples, n_features). All features used during training
      must be available in the unseen dataset.
  
  
  round: int, default = 4
      Number of decimal places to round predictions to.
  
  
  verbose: bool, default = True
      When set to False, holdout score grid is not printed.
  
  
  Returns:
      pandas.DataFrame
  
  
  Warnings
  --------
  - The behavior of the ``predict_model`` is changed in version 2.1 without backward
  compatibility. As such, the pipelines trained using the version (<= 2.0), may not
  work for inference with version >= 2.1. You can either retrain your models with a
  newer version or downgrade the version for inference.
docstr_tok: ["This","function","predicts","``","Label","``","using","a","trained","model",".","When","``","data","``","is","None",",","it","predicts","label","on","the","holdout","set",".","Example","--","--","--","-",">",">",">","from","pycaret.datasets","import","get_data",">",">",">","boston","=","get_data","(","'boston","'",")",">",">",">","from","pycaret.regression","import","*",">",">",">","exp_name","=","setup","(","data","=","boston",",","target","=","'medv","'",")",">",">",">","lr","=","create_model","(","'lr","'",")",">",">",">","pred_holdout","=","predict_model","(","lr",")",">",">",">","pred_unseen","=","predict_model","(","lr",",","data","=","unseen_dataframe",")","estimator",":","scikit-learn","compatible","object","Trained","model","object","data",":","pandas.DataFrame","Shape","(","n_samples",",","n_features",")",".","All","features","used","during","training","must","be","available","in","the","unseen","dataset",".","round",":","int",",","default","=","4","Number","of","decimal","places","to","round","predictions","to",".","verbose",":","bool",",","default","=","True","When","set","to","False",",","holdout","score","grid","is","not","printed",".","Returns",":","pandas.DataFrame","Warnings","--","--","--","--","-","The","behavior","of","the","``","predict_model","``","is","changed","in","version","2.1","without","backward","compatibility",".","As","such",",","the","pipelines","trained","using","the","version","(","<","=","2.0",")",",","may","not","work","for","inference","with","version",">","=","2.1",".","You","can","either","retrain","your","models","with","a","newer","version","or","downgrade","the","version","for","inference","."]
code: def predict_model(
      self,
      estimator,
      data: Optional[pd.DataFrame] = None,
      round: int = 4,
      verbose: bool = True,
  ) -> pd.DataFrame:
      """
      This function predicts ``Label`` using a trained model. When ``data`` is
      None, it predicts label on the holdout set.
  
  
      Example
      -------
      >>> from pycaret.datasets import get_data
      >>> boston = get_data('boston')
      >>> from pycaret.regression import *
      >>> exp_name = setup(data = boston,  target = 'medv')
      >>> lr = create_model('lr')
      >>> pred_holdout = predict_model(lr)
      >>> pred_unseen = predict_model(lr, data = unseen_dataframe)
  
  
      estimator: scikit-learn compatible object
          Trained model object
  
  
      data : pandas.DataFrame
          Shape (n_samples, n_features). All features used during training
          must be available in the unseen dataset.
  
  
      round: int, default = 4
          Number of decimal places to round predictions to.
  
  
      verbose: bool, default = True
          When set to False, holdout score grid is not printed.
  
  
      Returns:
          pandas.DataFrame
  
  
      Warnings
      --------
      - The behavior of the ``predict_model`` is changed in version 2.1 without backward
      compatibility. As such, the pipelines trained using the version (<= 2.0), may not
      work for inference with version >= 2.1. You can either retrain your models with a
      newer version or downgrade the version for inference.
  
  
      """
  
      return super().predict_model(
          estimator=estimator,
          data=data,
          probability_threshold=None,
          encoded_labels=False,
          round=round,
          verbose=verbose,
      )
  
imports: import logging
  import re
  import time
  from typing import Any, Callable, Dict, List, Optional, Tuple, Union
  import numpy
  import pandas
  from joblib.memory import Memory
  from pycaret.containers.metrics.regression import get_all_metric_containers
  from pycaret.containers.models.regression import ALL_ALLOWED_ENGINES, get_all_model_containers, get_container_default_engines
  from pycaret.internal.display import CommonDisplay
  from pycaret.internal.logging import get_logger
  from pycaret.internal.parallel.parallel_backend import ParallelBackend
  from pycaret.internal.pipeline import Pipeline
  from pycaret.internal.preprocess.preprocessor import Preprocessor
  from pycaret.internal.pycaret_experiment.non_ts_supervised_experiment import _NonTSSupervisedExperiment
  from pycaret.loggers.base_logger import BaseLogger
  from pycaret.utils.constants import DATAFRAME_LIKE, SEQUENCE_LIKE, TARGET_LIKE
  from pycaret.utils.generic import MLUsecase, highlight_setup
label_desc: Use image node_id 15 for calling the RegressionExperiment obj's underlying member method code with example usage: obj.predict_model(estimator, data, round, verbose) and returns: super