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"]
code: def _create_block_indices(self):
      self._block_indices_dict = dict({})
  
      start_index = 0
      for k in range(self.n_blocks):
          stop_index = start_index + self._data_blocks[k].shape[1]
          self._block_indices_dict[k] = list(
              range(start_index, stop_index)
          )
          start_index = stop_index
      if self._common_block is None:
          self._common_block_indices = []
      else:
          stop_index = start_index + self._common_block.shape[1]
          self._common_block_indices = list(
              range(start_index, stop_index)
          )
  
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 3 for calling the BlockPartitionedData obj's underlying member method code with example usage: obj._create_block_indices() without return types