Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

REF: Proposal: change DataFrame.to_excel to output unformatted excel file #54154

Closed
1 of 3 tasks
Tracked by #44823
attack68 opened this issue Jul 16, 2023 · 9 comments · Fixed by #54302
Closed
1 of 3 tasks
Tracked by #44823

REF: Proposal: change DataFrame.to_excel to output unformatted excel file #54154

attack68 opened this issue Jul 16, 2023 · 9 comments · Fixed by #54302
Assignees
Labels
IO Excel read_excel, to_excel Refactor Internal refactoring of code
Milestone

Comments

@attack68
Copy link
Contributor

Feature Type

  • Adding new functionality to pandas

  • Changing existing functionality in pandas

  • Removing existing functionality in pandas

Problem Description

TLDR;

Please indicate with a +1 if you are happy for the default DataFrame.to_excel to be changed to output an excel file without any bold or bordered style attached.

Description

The current action of DataFrame.to_excel is to produce an excel file with default bold and bordered styles for column and row headers:

df = pd.DataFrame([[1,2],[3,4]], index=["one", "two"], columns=["A", "B"])
df.to_excel("file.xlsx")

image

A number of issues are attempting to address this:

In a recent PR (#53973) it is proposed to remove the ability to format excel file styles with DataFrame.to_excel and instead document how users can use the Styler.to_excel to create styles excel files.

This has a number of advantages:

  • Simplifies the code, since it is effectively a removal and additions of documentation.
  • Creates a more consistent Styler.to_excel (which uses DataFrame.to_excel) since an unstyled Styler wont produce this bold bordering by default.
  • Encourages users to use a more flexible tool for formatting.

@pandas-dev appreciate input to gain some form of concensus to proceed.
@WillAyd @rhshadrach @mroeschke

Feature Description

Alternative Solutions

Additional Context

@attack68 attack68 added Enhancement Needs Triage Issue that has not been reviewed by a pandas team member IO Excel read_excel, to_excel Refactor Internal refactoring of code and removed Needs Triage Issue that has not been reviewed by a pandas team member Enhancement labels Jul 16, 2023
@rmhowe425
Copy link
Contributor

rmhowe425 commented Jul 16, 2023

Taking this since I'm already doing the work for this PR

@WillAyd
Copy link
Member

WillAyd commented Jul 16, 2023

+1

1 similar comment
@rhshadrach
Copy link
Member

+1

@mroeschke
Copy link
Member

+1 on a deprecation of to_excel from producing a formatted excel file

@rhshadrach
Copy link
Member

rhshadrach commented Jul 16, 2023

@mroeschke - would you be opposed to doing this in 3.0 without deprecation? I think to deprecate this, there would need to be a way to silence the warning - e.g. an argument or option added in and then that deprecated in 3.0. Since this can't break any workflow (it's just styling), that doesn't seem worth the effort to me.

@mroeschke
Copy link
Member

Sure a 3.0 break sounds good too

@alimcmaster1
Copy link
Member

+1

@attack68
Copy link
Contributor Author

I would suggets we have enough support here to progress with at least the PR, @rmhowe425

@rmhowe425
Copy link
Contributor

@attack68 Excellent! I'll get started on implementation

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
IO Excel read_excel, to_excel Refactor Internal refactoring of code
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants