alteryx / woodwork

Woodwork is a Python library that provides robust methods for managing and communicating data typing information.
https://woodwork.alteryx.com
BSD 3-Clause "New" or "Revised" License
145 stars 20 forks source link

Cache results of `IntegerNullable` and `BooleanNullable` inference #1733

Closed sbadithe closed 1 year ago

sbadithe commented 1 year ago

Preliminary performance testing points to a ~84% speed up on boolean_heavy data and a ~78% speed up on numeric_heavy data.

codecov[bot] commented 1 year ago

Codecov Report

Merging #1733 (df2e357) into main (bf63dd3) will decrease coverage by 0.01%. The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main    #1733      +/-   ##
==========================================
- Coverage   98.76%   98.75%   -0.01%     
==========================================
  Files          98       98              
  Lines       11942    11954      +12     
==========================================
+ Hits        11794    11805      +11     
- Misses        148      149       +1     
Impacted Files Coverage Δ
woodwork/tests/type_system/test_ltype_inference.py 100.00% <ø> (ø)
woodwork/tests/type_system/test_type_system.py 100.00% <100.00%> (ø)
woodwork/type_sys/inference_functions.py 99.24% <100.00%> (-0.76%) :arrow_down:
woodwork/type_sys/type_system.py 100.00% <100.00%> (ø)