class_docstr: Abstraction for a feature matrix in which the columns are grouped into
  blocks.
  
  Parameters
  ----------
  data_blocks: list of ndarray
      Blocks of feature columns
  common_block: ndarray
      A set of feature columns that should be common to all blocks
class_docstr_tok: ["Abstraction","for","a","feature","matrix","in","which","the","columns","are","grouped","into","blocks",".","Parameters","--","--","--","--","--","data_blocks",":","list","of","ndarray","Blocks","of","feature","columns","common_block",":","ndarray","A","set","of","feature","columns","that","should","be","common","to","all","blocks"]
docstr: Split the data intro training and test partitions given the
  training and test indices. Return the training and test
  block partitioned data objects.
  
  Parameters
  ----------
  train_indices: array-like of shape (n_train_samples,)
      The indices corresponding to the training samples
  test_indices: array-like of shape (n_test_samples,)
      The indices corresponding to the training samples
  
  Returns
  -------
  train_blocked_data: BlockPartitionedData
      Returns the training block partitioned data set
  test_blocked_data: BlockPartitionedData
      Returns the test block partitioned data set
docstr_tok: ["Split","the","data","intro","training","and","test","partitions","given","the","training","and","test","indices",".","Return","the","training","and","test","block","partitioned","data","objects",".","Parameters","--","--","--","--","--","train_indices",":","array-like","of","shape","(","n_train_samples",",",")","The","indices","corresponding","to","the","training","samples","test_indices",":","array-like","of","shape","(","n_test_samples",",",")","The","indices","corresponding","to","the","training","samples","Returns","--","--","--","-","train_blocked_data",":","BlockPartitionedData","Returns","the","training","block","partitioned","data","set","test_blocked_data",":","BlockPartitionedData","Returns","the","test","block","partitioned","data","set"]
code: def train_test_split(self, train_indices, test_indices):
      """
      Split the data intro training and test partitions given the
      training and test indices. Return the training and test
      block partitioned data objects.
  
      Parameters
      ----------
      train_indices: array-like of shape (n_train_samples,)
          The indices corresponding to the training samples
      test_indices: array-like of shape (n_test_samples,)
          The indices corresponding to the training samples
  
      Returns
      -------
      train_blocked_data: BlockPartitionedData
          Returns the training block partitioned data set
      test_blocked_data: BlockPartitionedData
          Returns the test block partitioned data set
      """
      train_blocks = [
          self.get_block(k)[train_indices, :]
          for k in range(self.n_blocks)
      ]
      train_blocked_data = BlockPartitionedData(train_blocks)
      test_blocks = [
          self.get_block(k)[test_indices, :]
          for k in range(self.n_blocks)
      ]
      test_blocked_data = BlockPartitionedData(test_blocks)
      return train_blocked_data, test_blocked_data
  
imports: from abc import ABC, abstractmethod
  import numpy
  from collections import defaultdict
  from sklearn.ensemble import BaseEnsemble
  from sklearn.ensemble._forest import _generate_unsampled_indices, _generate_sample_indices
  from .local_stumps import make_stumps, tree_feature_transform
label_desc: Use image node_id 9 for calling the BlockPartitionedData obj's underlying member method code with example usage: obj.train_test_split(train_indices, test_indices) and returns: train_blocked_data,  test_blocked_data