Fillers
cesnet_tszoo.utils.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, existing_indices: np.ndarray, missing_indices: np.ndarray, **kwargs) -> None:
if len(missing_indices) > 0 and missing_indices[0] == 0 and self.last_values is not None:
batch_values[0] = self.last_values
missing_indices = missing_indices[1:]
mask = np.zeros_like(batch_values, dtype=bool)
mask[missing_indices] = True
mask = 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.py
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 57 58 59 60 61 62 63 |
|
fill
abstractmethod
fill(batch_values: ndarray, existing_indices: ndarray, missing_indices: 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 |
existing_indices
|
ndarray
|
Indices in |
required |
missing_indices
|
ndarray
|
Indices in |
required |
kwargs
|
first_next_existing_values, first_next_existing_values_distance, default_values |
{}
|
Source code in cesnet_tszoo\utils\filler.py
51 52 53 54 55 56 57 58 59 60 61 62 63 |
|
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.py
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 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
|
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.py
118 119 120 121 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 |
|
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.py
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 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 |
|