class_docstr: A data interface for public data. This class is an interface to DiCE explainers
  and contains methods to transform user-fed raw data into the format a DiCE explainer
  requires, and vice versa.
docstr: Gets indexes from feature names of one-hot-encoded data.
code: def get_indexes_of_features_to_vary(self, features_to_vary="all"):
      """Gets indexes from feature names of one-hot-encoded data."""
      # TODO: add encoding as a parameter and use the function get_indexes_of_features_to_vary for label encoding too
      if features_to_vary == "all":
          return [i for i in range(len(self.ohe_encoded_feature_names))]
      else:
          ixs = []
          encoded_cats_ixs = (
              self.get_encoded_categorical_feature_indexes()
          )
          encoded_cats_ixs = [
              item for sublist in encoded_cats_ixs for item in sublist
          ]
          for colidx, col in enumerate(self.ohe_encoded_feature_names):
              if colidx in encoded_cats_ixs and col.startswith(
                  tuple(features_to_vary)
              ):
                  ixs.append(colidx)
              elif (
                  colidx not in encoded_cats_ixs
                  and col in features_to_vary
              ):
                  ixs.append(colidx)
          return ixs
  
imports: import logging
  from collections import defaultdict
  import numpy
  import pandas
  from raiutils.exceptions import UserConfigValidationException
  from sklearn.preprocessing import LabelEncoder
  from dice_ml.data_interfaces.base_data_interface import _BaseData
  from dice_ml.utils.exception import SystemException
label_desc: Use image node_id 19 for calling the PublicData obj's underlying member method code with example usage: obj.get_indexes_of_features_to_vary(features_to_vary) and returns: unknown, ixs