-
-
Notifications
You must be signed in to change notification settings - Fork 18.1k
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
to_excel() fails if unicode sheet name is used #1828
Comments
It looks a little more complicated than expected because in py3 isinstance(foo, str) is fine, but not in py2. |
In py2 basestring is the superclass for str and unicode so you can use it to catch both; in py3 we don't have the basestring or unicode types anymore. I would try this: try: basestring |
2to3 should convert basestring to str though no? |
Yes, it will, but don't you want this snippet to work regardless of whether it's being run with 2x or 3x? |
Everything checking out over here on Python 2 and 3. Closing the issue |
* commit 'v0.8.1-203-g67121af': (193 commits) BUG: DataFrame column formatting issue in length-truncated column close pandas-dev#1906 BUG: override min/max in DatetimeIndex to function as expected close pandas-dev#1895 BUG: DataFrame mixed-type arithmetic column-wise, fix DataFrame.diff upcasting->object bug close pandas-dev#1896 BUG: treat nobs=1 >= min_periods case in rolling_std/variance as 0 trivially. close pandas-dev#1884 TST: skip to_file test if URLError occurs on some systems VB: resolve test name conflict and update make script DOC: minor change to build script to help auto build process DOC: fixed extlinks in sphinx conf TST: oops import in wrong place TST: skip test_console_encode if sys.stdin.encoding is None TST: unit test for pandas-dev#1902 and default to csv.QUOTE_MINIMAL Make it possible to set quoting for to_csv ENH: clean up pandas-dev#1691 changes, rls note ENH: add more possible bool values to read_csv pandas-dev#1295 BUG: fix rolling_max/min for small inputs and large windows. Add a check that the min_period <= window size. Fixes pandas-dev#1897. Mention Ubuntu for NeuroDebian repository BUG: don't clobber color keyword in Series.plot, close pandas-dev#1890 DOC: add intersphinx mapping for python library, close pandas-dev#1556 BUG: fix mixed-integer .ix indexing bugs. close#1799 BUG: unicode sheet name in to_excel pandas-dev#1828 ...
Like the subject says, the check in DataFrame.to_excel() checks for an instance of str, rather than basestring, hence unicode names skip the if check and are treated like files, which causes an exception later on in the code. Changing isistance() to check for basestring rather than str fixes the issue.
The text was updated successfully, but these errors were encountered: