class_docstr: A cudf based implementation of Stratified K-Folds cross-validator.
  
  Provides train/test indices to split data into stratified K folds.
  The percentage of samples for each class are maintained in each
  fold.
  
  Parameters
  ----------
  n_splits : int, default=5
      Number of folds. Must be at least 2.
  shuffle : boolean, default=False
      Whether to shuffle each class's samples before splitting.
  random_state : int (default=None)
      Random seed
  
  Examples
  --------
  Splitting X,y into stratified K folds
  .. code-block:: python
      import cupy
      X = cupy.random.rand(12,10)
      y = cupy.arange(12)%4
      kf = StratifiedKFold(n_splits=3)
      for tr,te in kf.split(X,y):
          print(tr, te)
  Output:
  .. code-block:: python
      [ 4  5  6  7  8  9 10 11] [0 1 2 3]
      [ 0  1  2  3  8  9 10 11] [4 5 6 7]
      [0 1 2 3 4 5 6 7] [ 8  9 10 11]
code: def get_n_splits(self, X=None, y=None):
      return self.n_splits
  
file_path: cuml/python/cuml/model_selection/_split.py
imports: from typing import Optional, Union
  from cuml.common import input_to_cuml_array
  from cuml.internals.array import array_to_memory_order
  from cuml.internals.safe_imports import cpu_only_import, gpu_only_import, gpu_only_import_from
label_desc: Use image node_id 2 for calling the StratifiedKFold obj's underlying member method code with example usage: obj.get_n_splits(X, y) and returns: self