pandas.Index.to_frame

Index.to_frame(index=True, name=_NoDefault.no_default)[source]

Create a DataFrame with a column containing the Index.

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