code: def _retrieve_indices(cols):
          '''
          Retrieve a list of indices corresponding to the provided column specification.
          '''
          if isinstance(cols, int):
              return [cols]
          elif isinstance(cols, slice):
              start = cols.start if cols.start else 0
              stop = cols.stop
              step = cols.step if cols.step else 1
              return list(range(start, stop, step))
          elif isinstance(cols, list) and cols:
              if isinstance(cols[0], bool):
                  return np.flatnonzero(np.asarray(cols))
              elif isinstance(cols[0], int):
                  return cols
          else:
              raise TypeError('No valid column specifier. Only a scalar, list or slice of all'
                              'integers or a boolean mask are allowed.'f _retrieve_indices(cols):
          '''
          Retrieve a list of indices corresponding to the provided column specification.
          '''
          if isinstance(cols, int):
              return [cols]
          elif isinstance(cols, slice):
              start = cols.start if cols.start else 0
              stop = cols.stop
              step = cols.step if cols.step else 1
              return list(range(start, stop, step))
          elif isinstance(cols, list) and cols:
              if isinstance(cols[0], bool):
                  return np.flatnonzero(np.asarray(cols))
              elif isinstance(cols[0], int):
                  return cols
          else:
              raise TypeError('No valid column specifier. Only a scalar, list or slice of all'
                              'integers or a boolean mask are allowed.')
docs: Retrieve a list of indices corresponding to the provided column specification.