class_docstr: Provides implementations for DRL algorithms
  
  Attributes
  ----------
      env: gym environment class
          user-defined class
  
  Methods
  -------
      get_model()
          setup DRL algorithms
      train_model()
          train DRL algorithms in a train dataset
          and output the trained model
      DRL_prediction()
          make a prediction in a test dataset and get results
class_docstr_tok: ["Provides","implementations","for","DRL","algorithms","Attributes","--","--","--","--","--","env",":","gym","environment","class","user-defined","class","Methods","--","--","--","-","get_model","(",")","setup","DRL","algorithms","train_model","(",")","train","DRL","algorithms","in","a","train","dataset","and","output","the","trained","model","DRL_prediction","(",")","make","a","prediction","in","a","test","dataset","and","get","results"]
code: def get_model(
      self,
      model_name,
      policy="MlpPolicy",
      policy_kwargs=None,
      model_kwargs=None,
      verbose=1,
      seed=None,
      tensorboard_log=None,
  ):
      if model_name not in MODELS:
          raise ValueError(
              f"Model '{model_name}' not found in MODELS."
          )  # this is more informative than NotImplementedError("NotImplementedError")
  
      if model_kwargs is None:
          model_kwargs = MODEL_KWARGS[model_name]
  
      if "action_noise" in model_kwargs:
          n_actions = self.env.action_space.shape[-1]
          model_kwargs["action_noise"] = NOISE[
              model_kwargs["action_noise"]
          ](mean=np.zeros(n_actions), sigma=0.1 * np.ones(n_actions))
      print(model_kwargs)
      return MODELS[model_name](
          policy=policy,
          env=self.env,
          tensorboard_log=tensorboard_log,
          verbose=verbose,
          policy_kwargs=policy_kwargs,
          seed=seed,
          **model_kwargs,
      )
  
imports: from __future__ import annotations
  import time
  import numpy
  import pandas
  from stable_baselines3 import A2C
  from stable_baselines3 import DDPG
  from stable_baselines3 import PPO
  from stable_baselines3 import SAC
  from stable_baselines3 import TD3
  from stable_baselines3.common.callbacks import BaseCallback
  from stable_baselines3.common.noise import NormalActionNoise
  from stable_baselines3.common.noise import OrnsteinUhlenbeckActionNoise
  from stable_baselines3.common.vec_env import DummyVecEnv
  from finrl import config
  from finrl.meta.env_stock_trading.env_stocktrading import StockTradingEnv
  from finrl.meta.preprocessor.preprocessors import data_split
label_desc: Use image node_id 2 for calling the DRLAgent obj's underlying member method code with example usage: obj.get_model(model_name, policy, policy_kwargs, model_kwargs, verbose, seed, tensorboard_log) and returns: MODELS