Fillers
cesnet_tszoo.utils.filler.filler
Filler
Bases: ABC
Base class for data fillers.
This class serves as the foundation for creating custom fillers. To implement a custom filler, this class must be subclassed and extended. Fillers are used to handle missing data in a dataset.
Example:
import numpy as np
class ForwardFiller(Filler):
def __init__(self, features):
super().__init__(features)
self.last_values = None
def fill(self, batch_values: np.ndarray, missing_mask: np.ndarray, **kwargs) -> None:
if self.last_values is not None and np.any(missing_mask[0]):
batch_values[0, missing_mask[0]] = self.last_values[missing_mask[0]]
mask = missing_mask.T
idx = np.where(~mask, np.arange(mask.shape[1]), 0)
np.maximum.accumulate(idx, axis=1, out=idx)
batch_values = batch_values.T
batch_values[mask] = batch_values[np.nonzero(mask)[0], idx[mask]]
batch_values = batch_values.T
self.last_values = np.copy(batch_values[-1])
Source code in cesnet_tszoo\utils\filler\filler.py
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | |
fill
abstractmethod
fill(batch_values: ndarray, missing_mask: ndarray, **kwargs) -> None
Fills missing data in the batch_values.
This method is responsible for filling missing data within a single time series.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
batch_values
|
ndarray
|
Data of a single time series with shape |
required |
missing_mask
|
ndarray
|
Mask of missing values in batch_values. |
required |
kwargs
|
first_next_existing_values, first_next_existing_values_distance, default_values |
{}
|
Source code in cesnet_tszoo\utils\filler\filler.py
45 46 47 48 49 50 51 52 53 54 55 56 | |
MeanFiller
Bases: Filler
Fills values from total mean of all previous values.
Corresponds to enum FillerType.MEAN_FILLER or literal mean_filler.
Source code in cesnet_tszoo\utils\filler\filler.py
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 | |
ForwardFiller
Bases: Filler
Fills missing values based on last existing value.
Corresponds to enum FillerType.FORWARD_FILLER or literal forward_filler.
Source code in cesnet_tszoo\utils\filler\filler.py
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 | |
LinearInterpolationFiller
Bases: Filler
Fills values with linear interpolation.
Corresponds to enum FillerType.LINEAR_INTERPOLATION_FILLER or literal linear_interpolation_filler.
Source code in cesnet_tszoo\utils\filler\filler.py
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 | |
NoFiller
Bases: Filler
Does nothing.
Corresponds to enum FillerType.NO_FILLER or literal no_filler.
Source code in cesnet_tszoo\utils\filler\filler.py
178 179 180 181 182 183 184 185 186 | |