Add some support for outlier detection and cleaning
Add some of the functionality of tsclean() and tsoutliers from the forecast package.
Related question: https://stackoverflow.com/q/59051260/144157
Issue for outliers is here: https://github.com/tidyverts/fable/issues/160
In the first instance, I think outlier cleaning should be done as a combination of outlier detection, removal, and then interpolation. Simpler/automatic methods can be added later (much like automatic model selection à la forecast::forecast.ts()), where the results are to improve over time as the model selection algorithm improves.
Moved to {fabletools} as this functionality will first be implemented with the generics outliers() and interpolate(), where some intermediate function is used to replace outliers with missing values.
A higher level utility function to do these three steps (like tsclean()) can be introduced later, once the necessary parameters and appropriate defaults are better known.
Hi. What is the progress status on this? I use the forecast package but am interested in whether I should begin modifying code to fable functions. Thanks.
At minimum this functionality requires #137. I have a somewhat clear idea on the design of this feature (using distributional model fits), so basic/default model-based outlier detection would be a small extension once #137 is implemented.
As for prioritisation: I'm working on forecast reconciliation at the moment, however @robjhyndman is actively thinking about and working on outliers and so I expect outliers would be the next priority.