# Documentation/Calc Functions/FORECAST.ETS.PI.ADD

TDF LibreOffice Document Liberation Project Community Blogs Weblate Nextcloud Redmine Ask LibreOffice Donate

## Function name:

FORECAST.ETS.PI.ADD

## Category:

Statistical Analysis

## Summary:

Calculates the prediction interval(s) for additive forecast based on the historical data using ETS or EDS algorithms. EDS is used when argument **period_length** is 0, otherwise ETS is used.

## Syntax:

FORECAST.ETS.PI.ADD(**target**, **values**, **timeline**, [**confidence_level**], [**period_length**], [**data_completion**], [**aggregation**])

## Returns:

## Arguments:

**target** (mandatory): A date, time or numeric single value or range. The data point/range for which to calculate a forecast.

**values** (mandatory): A numeric array or range. **values** are the historical values, for which you want to forecast the next points.

**timeline** (mandatory): A numeric array or range. The time line (x-value) range for the historical values.

The time line doesn't have to to be sorted, the functions will sort it for calculations. The time line values must have a consistent step between them. If a constant step can't be identified in the sorted time line, the functions will return the #NUM! error. If the ranges of the time line and historical values aren't of same size, the functions will return the #N/A error. If the time line contains less than 2 periods of data, the functions will return the #VALUE! Error.

**confidence_level** (mandatory): A numeric value between 0 and 1 (exclusive), default is 0.95. A value indicating a confidence level for the calculated prediction interval.

With values <= 0 or >= 1, the functions will return the #NUM! Error.

**period_length** (optional): A numeric value >= 0, the default is 1. A positive integer indicating the number of samples in a period.

A value of 1 indicates that Calc is to determine the number of samples in a period automatically. A value of 0 indicates no periodic effects, a forecast is calculated with EDS algorithms. For all other positive values, forecasts are calculated with ETS algorithms. For values that not being a positive whole number, the functions will return the #NUM! Error.

**data_completion** (optional): a logical value TRUE or FALSE, a numeric 1 or 0, default is 1 (TRUE). A value of 0 (FALSE) will add missing data points with zero as historical value. A value of 1 (TRUE) will add missing data points by interpolating between the neighboring data points.

Although the time line requires a constant step between data points, the function support up to 30% missing data points, and will add these data points.

**aggregation** (optional): A numeric value from 1 to 7, with default 1. The aggregation parameter indicates which method will be used to aggregate identical time values:

Aggregation | Function |
---|---|

1 | AVERAGE |

2 | COUNT |

3 | COUNTA |

4 | MAX |

5 | MEDIAN |

6 | MIN |

7 | SUM |

Although the time line requires a constant step between data points, the functions will aggregate multiple points which have the same time stamp.

For example, with a 90% Confidence level, a 90% prediction interval will be computed (90% of future points are to fall within this radius from forecast).

Note on prediction intervals: there is no exact mathematical way to calculate this for forecasts, there are various approximations. Prediction intervals tend to be increasingly 'over-optimistic' when increasing distance of the forecast-X from the observation data set.

For ETS, Calc uses an approximation based on 1000 calculations with random variations within the standard deviation of the observation data set (the historical values).

## Additional details:

Exponential Smoothing is a method to smooth real values in time series in order to forecast probable future values.

Exponential Triple Smoothing (ETS) is a set of algorithms in which both trend and periodical (seasonal) influences are processed. Exponential Double Smoothing (EDS) is an algorithm like ETS, but without the periodical influences. EDS produces linear forecasts.

See the Wikipedia on Exponential smoothing algorithms for more information.

FORECAST.ETS.PI.ADD calculates with the model

forecast = basevalue + trend * ∆x + periodical_aberration.

## Examples:

The table below contains a timeline and its associated values:

A | B | |
---|---|---|

1 | Timeline | Values |

2 | 01/2013 | 112 |

3 | 02/2013 | 118 |

4 | 03/2013 | 132 |

5 | 04/2013 | 100 |

6 | 05/2013 | 121 |

7 | 06/2013 | 135 |

8 | 07/2013 | 148 |

9 | 08/2013 | 148 |

10 | 09/2013 | 136 |

11 | 10/2013 | 119 |

12 | 11/2013 | 104 |

13 | 12/2013 | 118 |

=FORECAST.ETS.PI.ADD(DATE(2014;1;1);Values;Timeline;0.9;1;TRUE();1)

Returns 18.8061295551355, the prediction interval for additive forecast for January 2014 based on **Values** and **Timeline** named ranges above, 90% (=0.9) confidence level, with one sample per period, no missing data, and AVERAGE as aggregation.

=FORECAST.ETS.PI.ADD(DATE(2014;1;1);Values;Timeline;0.8;4;TRUE();7)

Returns 23.4416821953741, the prediction interval for additive forecast for January 2014 based on **Values** and **Timeline** named ranges above, with confidence level of 0.8, period length of 4, no missing data, and SUM as aggregation.

## Related LibreOffice functions:

FORECAST

FORECAST.ETS.ADD

FORECAST.ETS.MULT

FORECAST.ETS.PI.MULT

FORECAST.ETS.SEASONALITY

FORECAST.ETS.STAT.ADD

FORECAST.ETS.STAT.MULT

FORECAST.LINEAR