127

I'm trying to print out a dataframe from pandas into Excel. Here I am using to_excel() functions. However, I found that the 1st column in Excel is the "index",

0   6/6/2021 0:00   8/6/2021 0:00
1   4/10/2024 0:00  6/10/2024 0:00
2   4/14/2024 0:00  6/14/2024 0:00

Is there any ways to get rid of the first column?

0

4 Answers 4

212

You need to set index=False in to_excel in order for it to not write the index column out, this semantic is followed in other Pandas IO tools, see http://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.to_excel.html and http://pandas.pydata.org/pandas-docs/stable/io.html

Sign up to request clarification or add additional context in comments.

1 Comment

Note that index=False does not work if you have MultiIndex columns (as of Pandas 1.3.4, Oct 2021). NotImplementedError: Writing to Excel with MultiIndex columns and no index ('index'=False) is not yet implemented.
56

Example: index = False

import pandas as pd

writer = pd.ExcelWriter("dataframe.xlsx", engine='xlsxwriter')
dataframe.to_excel(writer,sheet_name = dataframe, index=False)
writer.save() 

Comments

4

I did that and got the error message:

TypeError: 'DataFrame' objects are mutable, thus they cannot be hashed.

The code is as follows where 'test' is a dataframe with no column names

test = pd.DataFrame(biglist)
writer = pd.ExcelWriter("test.xlsx", engine='xlsxwriter')
test.to_excel(writer,sheet_name=test, index=False)
writer.save()

3 Comments

The error occurred for test.to_excel()
Am using Python 3.8.8
As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.
0

Ok Don't set the Sheet_name to the dataframe. I think you want the sheet name to be "test". It looks like the issue is in the sheet_name that you have set.

test = pd.DataFrame(biglist)
writer = pd.ExcelWriter('test.xlsx')
test.to_excel(writer, sheet_name="test", index=False)
writer.close()

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.