Prediction intervals for yhat and trend. Parameters ---------- df: Prediction dataframe. vectorized: Whether to use a vectorized method for generating future draws. Returns ------- Dataframe with uncertainty intervals.
(self, df: pd.DataFrame, vectorized: bool)
| 1432 | return pd.DataFrame(data) |
| 1433 | |
| 1434 | def predict_uncertainty(self, df: pd.DataFrame, vectorized: bool) -> pd.DataFrame: |
| 1435 | """Prediction intervals for yhat and trend. |
| 1436 | |
| 1437 | Parameters |
| 1438 | ---------- |
| 1439 | df: Prediction dataframe. |
| 1440 | vectorized: Whether to use a vectorized method for generating future draws. |
| 1441 | |
| 1442 | Returns |
| 1443 | ------- |
| 1444 | Dataframe with uncertainty intervals. |
| 1445 | """ |
| 1446 | sim_values = self.sample_posterior_predictive(df, vectorized) |
| 1447 | |
| 1448 | lower_p = 100 * (1.0 - self.interval_width) / 2 |
| 1449 | upper_p = 100 * (1.0 + self.interval_width) / 2 |
| 1450 | |
| 1451 | series = {} |
| 1452 | for key in ['yhat', 'trend']: |
| 1453 | series['{}_lower'.format(key)] = self.percentile( |
| 1454 | sim_values[key], lower_p, axis=1) |
| 1455 | series['{}_upper'.format(key)] = self.percentile( |
| 1456 | sim_values[key], upper_p, axis=1) |
| 1457 | |
| 1458 | return pd.DataFrame(series) |
| 1459 | |
| 1460 | def sample_posterior_predictive(self, df: pd.DataFrame, vectorized: bool) -> Dict[str, np.ndarray]: |
| 1461 | """Prophet posterior predictive samples. |
no test coverage detected