invenia / Impute.jl

Imputation methods for missing data in julia
https://invenia.github.io/Impute.jl/latest/
Other
76 stars 11 forks source link

Generalize `apply` vs `impute` distinctions #89

Open rofinn opened 3 years ago

rofinn commented 3 years ago

Rather than having completely different APIs (e.g., apply vs impute) for Chain, Imputors, Filter, Validators, etc maybe we should just define a common API apply convention for all these types and distinguish them with functions like return_type, ccr (consume construct return), ismutating? We currently have mostly duplicated default behaviour for Imputors, Validators and declaremissings. This will just get worse once the current set of deprecations are completely removed. We also have only slight differences in the autogenerated functional API which could probably be simplified.

rofinn commented 3 years ago

NOTE: Since this should mostly just reduce code duplicate and possible improve efficiency I don't think it'd be a breaking change to introduce in a future release. I'm going to leave this off the 0.6 milestone.