pandas.Index.to_frame

Index.to_frame(self, index=True, name=None)[source]

Create a DataFrame with a column containing the Index.

New in version 0.24.0.

Parameters
indexbool, default True

Set the index of the returned DataFrame as the original Index.

nameobject, default None

The passed name should substitute for the index name (if it has one).

Returns
DataFrame

DataFrame containing the original Index data.

See also

Index.to_series

Convert an Index to a Series.

Series.to_frame

Convert Series to DataFrame.

Examples

>>> idx = pd.Index(['Ant', 'Bear', 'Cow'], name='animal')
>>> idx.to_frame()
       animal
animal
Ant       Ant
Bear     Bear
Cow       Cow

By default, the original Index is reused. To enforce a new Index:

>>> idx.to_frame(index=False)
    animal
0   Ant
1  Bear
2   Cow

To override the name of the resulting column, specify name:

>>> idx.to_frame(index=False, name='zoo')
    zoo
0   Ant
1  Bear
2   Cow