12935 added full support for duplicate column names (in header or in names
) by mangling them. While this has been considered acceptable by users, ideally, we would like to not have to mangle them.
Comment From: gfyoung
@jreback : Given what you said in #17060, is this something we should still pursue ?
Comment From: jorisvandenbossche
Depending on how difficult this is, I would personally still have it as our goal to have mangle_dupe_cols=False
implemented some time.
Comment From: caniko
What is the ETA on this issue?
Comment From: jreback
when / if a community pull request happens
Comment From: gfyoung
@caniko2 : This is quite a tricky one given that duplicate column names have unusual behavior in pandas
. You are more than welcome to submit a PR to implement it if you like.
Comment From: jackzhenguo
Could anyone help me to check whether current pandas 0.24.2 support "mangle_dupe_cols=False"?
I find docs at http://pandas.pydata.org/pandas-docs/stable/user_guide/io.html, showing : Passing in False will cause data to be overwritten if there are duplicate names in the columns.
Thanks so much!
Comment From: gfyoung
Still no support, as behavior of data handling has proven to be quite non-trivial when there are duplicate column names. You are welcome to give it a shot though!
Comment From: grisaitis
Still no support, as behavior of data handling has proven to be quite non-trivial when there are duplicate column names. You are welcome to give it a shot though!
is this issue still difficult to resolve?
Comment From: hepcat72
Since I cannot set it to False
and I cannot otherwise check for duplicated using df.columns.duplicated()
on the dataframe returned by read_excel
, how do I raise an exception when a duplicate is found - because it definitely causes a problem with other code - and the user needs to rectify it.
Comment From: Jaakkonen
The documentation really shouldn't have this option if it in reality doesn't exist. Or the docs should say that this is to-be-implemented (and has been in that state for almost 6 years already)
Comment From: phofl
The argument was removed, so closing