Lazy operations should be opt-in
- Dominant language
- Julia
- Stars
- 124
- Forks
- 23
- PR merge metrics
- No merged PRs in 30d
Description
Operation like `splitobs`, `shuffleobs` and many more return `ObsView`s that one has to call `getobs` on in order to materialize.
I think this is unexpected for users coming from scikit-learn and mildly annoying in most scenarios.
As a default, operations on materialized objects should return materialized objects (e.g. arrays and dataframes).
Users will be able to opt-in on the "lazy" by wrapping data in a `ObsView`. Operations on ObsView will produce other ObsView that can be materialized only at the end of the pipeline.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the implementations of splitobs, shuffleobs, ObsView, and getobs, then trace how operations behave on materialized inputs and views. Define the required materialized-default and lazy-opt-in behavior, including how pipelines are finalized, and add coverage for both paths before considering the issue done.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100