villebro opened a new pull request #10324:
URL: https://github.com/apache/incubator-superset/pull/10324


   ### SUMMARY
   This PR adds [Facebook Prophet](https://facebook.github.io/prophet/) as an 
optional dependency to enable time series forecasting in viz plugins. For each 
series (=column), it will add three new columns with the following suffix:
   - `__yhat`: forecast
   - `__yhat_lower`: lower confidence level
   - `__yhat_upper`: uper confidence level
   In addition, it extrapolates as many time grain steps into the future as 
have been specified in the `periods` parameter. For instance, 52 periods with 
weekly time grains will create a forecast of 52 weekly observations = 1 year 
into the future. The forecast along with confidence intervals will be made 
available for the whole time period, while the observations (without a suffix) 
will be null for the forecasted dates. For more details please refer to the 
[excellent 
tutorial](https://facebook.github.io/prophet/docs/quick_start.html#python-api) 
by the Prophet team.
   
   This treats each series as an individual time series model, hence will be 
computationally very expensive in the case of multiple columns. However, since 
the new chart data endpoint caches the end result, only the first calculation 
will be slow.
   
   I've tried to add as many different tests as possible (schema validation, 
post processing, e2e API test) to ensure functionality. The end-to-end tests 
require `fbprophet` to be installed, however I decided against adding it to 
`requirements-dev.txt`, as it will make CI much more sluggish. However, anyone 
interested in developing this feature further can install the dependency 
locally and activate the e2e tests that are otherwise skipped.
   
   ### TEST PLAN
   CI + new tests
   
   ### ADDITIONAL INFORMATION
   <!--- Check any relevant boxes with "x" -->
   <!--- HINT: Include "Fixes #nnn" if you are fixing an existing issue -->
   - [ ] Has associated issue:
   - [ ] Changes UI
   - [ ] Requires DB Migration.
   - [ ] Confirm DB Migration upgrade and downgrade tested.
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to