I have a dataframe as follows:
PLEASE_REMOVE 2013 2014 2015
THIS_IS_EASY
-------------------------------
Bob 0 3 4
Mary 2 3 6
The years (2013, 2014, 2015) are the column index labels. The names (Mary, Bob) are the row index labels.
I have somehow managed to get labels for the row indices and column indices.
Using df.index.names = ['']
I can remove the THIS_IS_EASY bit.
How can I remove the PLEASE_REMOVE bit?
Desired output is:
2013 2014 2015
-------------------------------
Bob 0 3 4
Mary 2 3 6
df.columns.name = None
Simply delete the name of the columns:
del df.columns.name
Also, note that df.index.names = ['']
is not quite the same as del df.index.name
.
Like this:
df = df.rename_axis(None)
This will get rid of everything on the top left. you can also do it in place: https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.rename_axis.html
In Pandas 1.0.3 the following works:
df.columns.name = None
The 'accepted answer' above, del df.columns.name
, leads to: 'AttributeError: can't delete attribute'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With