Skip to content

v0.2.1 - Performance improvement and code quality

Choose a tag to compare

@jiro-iwanaga jiro-iwanaga released this 06 Jun 15:04
· 143 commits to main since this release

What's Changed

Performance

  • fit() / fit_period() and transform() now use pandas vectorized groupby
    instead of row-by-row Python loops (itertuples), significantly reducing
    processing time on large interaction logs.

Documentation

  • Docstrings for RecencyFrequencyScorer and RFOptimizer have been improved
    for clarity and IDE support.
  • docs/functional-design.md and docs/development-guidelines.md updated to
    reflect fit_period() alongside fit() in all relevant descriptions.

Tests

  • Added comprehensive TestEvaluate class covering precision, recall, f1,
    recall_norm, and f1_norm metrics (129 tests total).
  • Fixed test_resets_solve_state to correctly verify solver state reset after
    build_model().

Internal

  • String quotes unified to double quotes throughout scorer.py and
    optimizer.py.

Full Changelog

v0.2.0...v0.2.1