The Designer class in its work uses own methods for generating subsamples in an empirical approach.
Let's think about switching to using the Splitter class for the tasks of subsamples generation inside the Designer.
Currently, I see the following advantages of this choice:
- The code will be more consistent and clear because the
Splitter is designed specifically to generate subsamples(actually set of subgroups).
- In the future, there will be no need to duplicate the same features for split and design methods.
- Simultaneous refactoring of old and duplicated pieces of code in
tools.py and others modules
- We could pass custom configuration for the
Splitter instance inside the methods, which would help keep the empirical design more flexible and correct for custom splitting.
The cons should be considered as well, for example, there may be some problems with generation of a large number of group pairs with current structure of the Splitter.
The
Designerclass in its work uses own methods for generating subsamples in an empirical approach.Let's think about switching to using the
Splitterclass for the tasks of subsamples generation inside theDesigner.Currently, I see the following advantages of this choice:
Splitteris designed specifically to generate subsamples(actually set of subgroups).tools.pyand others modulesSplitterinstance inside the methods, which would help keep the empirical design more flexible and correct for custom splitting.The cons should be considered as well, for example, there may be some problems with generation of a large number of group pairs with current structure of the
Splitter.