-
-
Notifications
You must be signed in to change notification settings - Fork 2k
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
feat(python): Improved type-inference for read_excel
and read_ods
, use calamine engine for read_ods
#15808
feat(python): Improved type-inference for read_excel
and read_ods
, use calamine engine for read_ods
#15808
Conversation
…pe-inference pass-through and new defaults for "xlsb" and "ods"
0dab002
to
64a1ab9
Compare
read_excel
and read_ods
with additional type-inference options, use calamine for "xlsb" and "ods"read_excel
and read_ods
with additional type-inference options, use calamine engine for "ods"
read_excel
and read_ods
with additional type-inference options, use calamine engine for "ods"read_excel
and read_ods
with , use calamine engine for "ods"
read_excel
and read_ods
with , use calamine engine for "ods"read_excel
and read_ods
, use calamine engine for read_ods
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #15808 +/- ##
=======================================
Coverage 80.39% 80.40%
=======================================
Files 1264 1264
Lines 165421 165423 +2
=======================================
+ Hits 132994 133008 +14
+ Misses 32427 32415 -12 ☔ View full report in Codecov by Sentry. |
Cool stuff! Can we switch to calamine for excel as well? |
Definitely, and I plan to do so; I think that it needs a bit more prep work than the two (more niche) engines I'm switching over here though, due to "xlsx2csv" being the default, and having a lot of customisation available via the |
All right. That sounds good. 👌😁 |
Closes #15596.
Closes #15748.
Closes #15763.
Closes #11274.
Taking care of a number of paper-cut issues here; four for the price of one... ;)
Updates
read_excel
andread_ods
, automatically integrating it with engine-specific "read_options" (where available; otherwise it's passed down toDataFrame
init).load_sheet_by_name
method.read_options
, making it a lot clearer which method the options will be passed to.read_ods
to "calamine"; this is not a breaking change as the "ezodf" engine was not configurable in any way, andread_ods
has never had an "engine" parameter. Switching out internally for "calamine" removes a lot of custom parsing code, massively improves performance, allows for additional parsing options, and gets rid of an optional dependency on a package that hasn't had an update in about 10(!) years.