Skip to content

ABC the splitting classes #429

@karel-w

Description

@karel-w

Summary

Create an abstract base class for all the splitting classes, such that we can recycle functionality required for splitting.

Maybe we still want to add more splits to see if more patterns emerge.

Motivation

In our splits.py:

TODO
----
- Introduce parent Splitter class when splitter patterns emerge.

One of the patterns emerging now is the validation of sequence overlap, i've added this to the PredefinedSplitter.

Proposed solution

ABC for the splitter, e.g.,

class AbstractSplitter(ABC)
        def _validate_no_sequence_overlap()

class RandomSplit(AbstractSplitter)
class KfoldSplit(AbstractSplitter)
class PredefinedSplitter(AbstractSplitter)

Metadata

Metadata

Assignees

No one assigned

    Labels

    refineIssues with this tag needs refinement by team. Typically used to brain dump issues that pop up

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions