class_docstr: Pandas dataframe class with a simplified selection function
docstr: Returns the set of unique values or set of values for a column or columns
  
  Parameter
  ---------
  column_s: str or tp.Sequence[str]
      a column name, or list of column names
  
  Returns
  -------
  set
     a set of values if the input was a column name, or a set of tuple of values
     if the name was a list of columns
docstr_tok: ["Returns","the","set","of","unique","values","or","set","of","values","for","a","column","or","columns","Parameter","--","--","--","--","-","column_s",":","str","or","tp.Sequence","[","str","]","a","column","name",",","or","list","of","column","names","Returns","--","--","--","-","set","a","set","of","values","if","the","input","was","a","column","name",",","or","a","set","of","tuple","of","values","if","the","name","was","a","list","of","columns"]
code: def unique(
      self, column_s: tp.Union[str, tp.Sequence[str]]
  ) -> tp.Union[tp.Tuple[tp.Any, ...], tp.Set[tp.Tuple[tp.Any, ...]]]:
      """Returns the set of unique values or set of values for a column or columns
  
      Parameter
      ---------
      column_s: str or tp.Sequence[str]
          a column name, or list of column names
  
      Returns
      -------
      set
         a set of values if the input was a column name, or a set of tuple of values
         if the name was a list of columns
      """
      if isinstance(column_s, str):
          return set(
              self.loc[:, column_s]
          )  # equivalent to df.<name>.unique()
      elif isinstance(column_s, (list, tuple)):
          testing.assert_set_equal(
              set(column_s) - set(self.columns),
              {},
              err_msg="Unknown column(s)",
          )
          df = self.loc[:, column_s]
          assert (
              not df.isnull().values.any()
          ), "Cannot work with NaN values"
          return set(tuple(row) for row in df.itertuples(index=False))
      else:
          raise NotImplementedError(
              "Only strings, lists and tuples are allowed"
          )
  
file_path: nevergrad/nevergrad/benchmark/utils.py
imports: from collections import abc
  import numpy
  import pandas
  import nevergrad.common.typing
  from nevergrad.common import testing
label_desc: Use image node_id 5 for calling the Selector obj's underlying member method code with example usage: obj.unique(column_s) and returns: set, set