Module core.steps.split.no_split_step

Implementation of the identity split.

Functions

NoSplitPartitionFn(element: Any, num_partitions: int) ‑> int : Function for no split on data; to be used in a beam.Partition. Args: element: Data point, given as a tf.train.Example. num_partitions: Number of splits, unused here.

Returns:
    An integer n, where 0 ≤ n ≤ num_partitions - 1.

Classes

NoSplit(statistics=None, schema=None) : No split function. Use this to pass your entire data forward completely unchanged.

No split constructor.

Use this to pass your entire data forward completely
unchanged.

Args:
    statistics: Parsed statistics from a preceding StatisticsGen.
    schema: Parsed schema from a preceding SchemaGen.

### Ancestors (in MRO)

* zenml.core.steps.split.base_split_step.BaseSplit
* zenml.core.steps.base_step.BaseStep

### Methods

`get_split_names(self) ‑> List[str]`
:   Returns the names of the splits associated with this split step.
    
    Returns:
        A list of strings, which are the split names.

`partition_fn(self)`
:   Returns the partition function associated with the current split type,
    along with keyword arguments used in the signature of the partition
    function.
    
    To be eligible in use in a Split Step, the partition_fn has to adhere
    to the following design contract:
    
    1. The signature is of the following type:
    
        >>> def partition_fn(element, n, **kwargs) -> int,
    
        where n is the number of splits;
    2. The partition_fn only returns signed integers i less than n, i.e. ::
    
            0 ≤ i ≤ n - 1.
    
    Returns:
        A tuple (partition_fn, kwargs) of the partition function and its
         additional keyword arguments (see above).