code: def split_data(X, best_split, best_threshold):
      """Split data."""
      left_idx = np.zeros(len(X), dtype=np.int_)
      left_count = 0
      right_idx = np.zeros(len(X), dtype=np.int_)
      right_count = 0
      missing_idx = np.zeros(len(X), dtype=np.int_)
      missing_count = 0
      for i, case in enumerate(X):
          if case[best_split] <= best_threshold:
              left_idx[left_count] = i
              left_count += 1
          elif case[best_split] > best_threshold:
              right_idx[right_count] = i
              right_count += 1
          else:
              missing_idx[missing_count] = i
              missing_count += 1
  
      return (
          left_idx[:left_count],
          right_idx[:right_count],
          missing_idx[:missing_count],
      )
  
file_path: sktime/sktime/classification/sklearn/_continuous_interval_tree_numba.py
imports: import math
  import numpy
  from sktime.utils.numba.njit import njit
  from sktime.utils.numba.stats import iqr, mean, numba_max, numba_min, slope, std
label_desc: Use image node_id 6 for calling a global function with example usage: split_data(X, best_split, best_threshold) and returns: left_idx,  right_idx,  missing_idx