fabletools icon indicating copy to clipboard operation
fabletools copied to clipboard

Add some support for outlier detection and cleaning

Open robjhyndman opened this issue 5 years ago • 4 comments

Add some of the functionality of tsclean() and tsoutliers from the forecast package.

Related question: https://stackoverflow.com/q/59051260/144157

robjhyndman avatar Nov 26 '19 21:11 robjhyndman

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.

mitchelloharawild avatar Nov 26 '19 22:11 mitchelloharawild

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.

mitchelloharawild avatar May 07 '21 05:05 mitchelloharawild

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.

SeanRichterWalsh avatar Dec 12 '23 08:12 SeanRichterWalsh

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.

mitchelloharawild avatar Dec 12 '23 09:12 mitchelloharawild