code: def print_split_info(X, y, groups, **cv_args):
      """Print information details about splits."""
      cv = GroupTimeSeriesSplit(**cv_args)
      groups = np.array(groups)
  
      for train_idx, test_idx in cv.split(X, groups=groups):
          print("Train indices:", train_idx)
          print("Test indices:", test_idx)
          print("Train length:", len(train_idx))
          print("Test length:", len(test_idx))
          print("Train groups:", groups[train_idx])
          print("Test groups:", groups[test_idx])
          print("Train group size:", len(set(groups[train_idx])))
          print("Test group size:", len(set(groups[test_idx])))
          print("Train group months:", X.index[train_idx].values)
          print("Test group months:", X.index[test_idx].values)
          print()
  
file_path: mlxtend/mlxtend/evaluate/time_series.py
imports: from itertools import accumulate, chain, groupby, islice
  import matplotlib.pyplot
  import numpy
  from matplotlib.patches import Patch
  from matplotlib.ticker import MaxNLocator
  from sklearn.utils import indexable
label_desc: Use image node_id 1 for calling a global function with example usage: print_split_info(X, y, groups) without return types