code: def test_4_time_series_classification_long_horizon_multiclass(self):
      df = pd.read_csv("tests/data/arrivals.csv")[
          :127
      ]  # enforce "Country" to be "No information"
      target = "Traffic"
      df[target] = df[target].apply(
          lambda x: chr(65 + int(str(x / 10000)[0]))
      )  # multiclass time series target
  
      # test array columns as additional input
      df["test_num_array"] = [
          [random.choice([1, 2, 3, 4]) for __ in range(4)]
          for _ in range(df.shape[0])
      ]
      df["test_cat_array"] = [
          [random.choice(["a", "b", "c", "d"]) for __ in range(4)]
          for _ in range(df.shape[0])
      ]
  
      train_idxs = np.random.rand(len(df)) < 0.8
      train = df[train_idxs]
      test = df[~train_idxs]
  
      predictor = predictor_from_problem(
          df,
          ProblemDefinition.from_dict(
              {
                  "target": target,
                  "time_aim": 80,
                  "anomaly_detection": False,
                  "timeseries_settings": {
                      "order_by": "T",
                      "use_previous_target": True,
                      "window": 5,
                      "horizon": 2,
                  },
              }
          ),
      )
  
      predictor.learn(train)
      predictor.predict(test)
  
imports: import random
  from datetime import datetime
  from datetime import timedelta
  import unittest
  import numpy
  import pandas
  from typing import List
  from scipy import signal
  from sklearn.metrics import r2_score
  from lightwood.api.types import ProblemDefinition
  from tests.utils.timing import train_and_check_time_aim
  from sktime.forecasting.base import ForecastingHorizon
  from sktime.forecasting.statsforecast import StatsForecastAutoARIMA
  from dataprep_ml.splitters import stratify
  from lightwood.api.high_level import json_ai_from_problem, code_from_json_ai, predictor_from_code, predictor_from_problem, predictor_from_json_ai
  from lightwood.mixer.sktime import SkTime
label_desc: Use image node_id 7 for calling the TestTimeseries obj's underlying member method code with example usage: obj.test_4_time_series_classification_long_horizon_multiclass() without return types