code: def _get_univar_exo_data_with_index_column():
      """Generates multiple datasets of univariate data with exogenous variables
      where the index is specified through a column of different.
      """
      # TODO: Find a better source of data ----
      data1 = pd.read_csv(
          "https://raw.githubusercontent.com/ngupta23/DS6373_TimeSeries/2b40f0071c3b7ec6a05dc0106f64e041f8cbaaef/Projects/gdp_prediction/data/economic_indicators_all_ex_3mo_china_inc_treas3mo.csv"
      )
      data1["date"] = pd.to_datetime(
          data1["date"].str.replace(" ", "-")
      )
      data1.set_index("date", inplace=True)
  
      # PeriodIndex
      data1.index = data1.index.to_period()
  
      # DatetimeIndex column
      data2 = data1.copy()
      data2 = data2.to_timestamp()
  
      # Int64Index column
      data3 = data1.copy()
      data3.reset_index(drop=True, inplace=True)
  
      data1.reset_index(inplace=True)
      data2.reset_index(inplace=True)
      data3.reset_index(inplace=True)
  
      data1.rename(columns={"date": "index"}, inplace=True)
      data2.rename(columns={"date": "index"}, inplace=True)
  
      # String Index (created from datetime index)
      data4 = data2.copy()
      data4["index"] = data4["index"].dt.strftime("%m/%d/%Y")
  
      ids = ["Period", "Datetime", "Int", "String"]
  
      # DateTimeIndex & String index column is coerced and returned as PeriodIndex
      # in PyCaret
      return [
          [
              (data1, pd.PeriodIndex),
              (data2, pd.PeriodIndex),
              (data3, pd.Index),
              (data4, pd.PeriodIndex),
          ],
          ids,
      ]
  
file_path: pycaret/tests/test_time_series_indices.py
imports: import os
  from typing import Any
  import pandas
  import pytest
  from pycaret.datasets import get_data
  from pycaret.time_series import TSForecastingExperiment
label_desc: Use image node_id 4 for calling a global function with example usage: _get_univar_exo_data_with_index_column() and returns: list