> For the complete documentation index, see [llms.txt](https://doc.verteego.com/verteego-doc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.verteego.com/verteego-doc/pipelines/forecasting-pipelines/calculators/transformation/fill_series.md).

# fill\_series

Verteego allows for the filling of the time series and the resampling of the datasets. It resamples every series to a given time interval, filling the missing values in the target columns by 0.

## Usage

{% hint style="info" %}
Fill filling of the time series
{% endhint %}

This calculator can be used with the following method:

<mark style="color:red;">**`fill_series`**</mark>

Examples:

* filling the missing values in the target columns by 0

***

## Main Parameters

{% hint style="success" %}
**The bold options** represent the default values when the parameters are optional.
{% endhint %}

* *<mark style="color:blue;">input\_columns</mark>* \
  list of columns used as input of the calculators
* *<mark style="color:blue;">output\_columns</mark>* \
  list of columns added by the calculators
* *<mark style="color:blue;">global</mark>* *(true, **false)*** \
  Should this calculator be performed before data splitting during training for cross-validation
* *<mark style="color:blue;">steps</mark>* \[optionnal] *(**training, prediction**, postprocessing*)\
  List of steps in a pipeline where columns from this calculator are added to the data. Note that when the training option is listed, the calculator is actually added during preprocessing.
* *<mark style="color:blue;">store\_in\_model</mark>* \[optionnal] *(true, **false)*** \
  Please indicate whether the "calculated" columns by the calculator should be stored in the model or not to avoid recalculating them during prediction. This is only relevant if the calculated columns are added to both training and prediction. Without this parameter, the values will not be stored in the model. The following parameters only make sense if this parameter is set to *true*.
* *<mark style="color:blue;">stored\_columns</mark>* \[required if *<mark style="color:blue;">store\_in\_model</mark> is true*] \
  List indicating the columns to be stored among the *<mark style="color:blue;">output\_columns</mark>*.
* *<mark style="color:blue;">stored\_keys</mark>* \[required if *<mark style="color:blue;">store\_in\_model</mark> is true*] \
  List indicating the columns to use for identifying the correct values to join on the data for prediction among the stored values (logically, they are to be chosen from the *<mark style="color:blue;">input\_columns</mark>*).

***

## Specific Parameters

* *<mark style="color:blue;">rule:</mark>*\
  The time interval string. Can be : 'H' for hours 'D' for days 'W' for weeks 'M' for months to use for filling
* *<mark style="color:blue;">resolution:</mark>*\
  The resolution at which the series should be filled.
* *<mark style="color:blue;">max\_gap:</mark>*

  Optional. The maximum number of consecutive missing values to fill. Defaults to no limit.
* *<mark style="color:blue;">aggregations:</mark>*

  Optional. The columns that should use a specific function to get aggregated and their aggregation functions. If a column isn't specified in aggregations, it will use the aggregator 'first' when aggregating multiple rows and the missing values will be forward filled. Allowed aggregators: 'mean', 'sum' 'min', 'max'

***

## Examples

1. The config must specify a date\_col for the fill\_series to work. The missing dates values will be filled to match the specified time interval (rule).

```yaml
preprocessing:
  fill_series:
      rule: W
      resolution:
      - item_id
      - pos_id
      max_gap: 4
      aggregations:
        price: mean
        nb_clients: sum
```
