# pandas.DataFrame.set_index

`DataFrame.``set_index`(keys, drop=True, append=False, inplace=False, verify_integrity=False)

  Set the DataFrame index (row labels) using one or more existing columns. By default yields a new object.

  Parameters:

  keys : column label or list of column labels / arrays

  drop : boolean, default True

  > Delete columns to be used as the new index

  append : boolean, default False

  > Whether to append columns to existing index

  inplace : boolean, default False

  > Modify the DataFrame in place (do not create a new object)

  verify_integrity : boolean, default False

  > Check the new index for duplicates. Otherwise defer the check until necessary. Setting to False will improve the performance of this method

  Returns: | dataframe : DataFrame

  Examples

      >>> df = pd.DataFrame({'month': [1, 4, 7, 10],
      ...                    'year': [2012, 2014, 2013, 2014],
      ...                    'sale':[55, 40, 84, 31]})
         month  sale  year
      0  1      55    2012
      1  4      40    2014
      2  7      84    2013
      3  10     31    2014

  Set the index to become the ‘month’ column:

      >>> df.set_index('month')
             sale  year
      month
      1      55    2012
      4      40    2014
      7      84    2013
      10     31    2014

  Create a multi-index using columns ‘year’ and ‘month’:

      >>> df.set_index(['year', 'month'])
                  sale
      year  month
      2012  1     55
      2014  4     40
      2013  7     84
      2014  10    31

  Create a multi-index using a set of values and a column:

      >>> df.set_index([[1, 2, 3, 4], 'year'])
               month  sale
         year
      1  2012  1      55
      2  2014  4      40
      3  2013  7      84
      4  2014  10     31

Scroll To Top