find anomalyPoints
This commit is contained in:
parent
f4b8089f29
commit
57e588f4a0
@ -21,17 +21,26 @@ public class AnomalyDifferenceSmoothed extends Target {
|
||||
}
|
||||
|
||||
@Override
|
||||
public TimeSeries calculate(TimeSeries ts) throws ModelingException, ExecutionException, InterruptedException, InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException {
|
||||
TimeSeries anomalyPoints = new TimeSeries();
|
||||
public TimeSeries calculate(TimeSeries timeSeries) throws ModelingException, ExecutionException, InterruptedException, InvocationTargetException, NoSuchMethodException, InstantiationException, IllegalAccessException {
|
||||
TimeSeries residual = new TimeSeries();
|
||||
ModelingResult modelingResult = timeSeriesService.smoothTimeSeries(ts, "AddTrendAddSeason");
|
||||
var tsResult = modelingResult.getTimeSeries();
|
||||
TimeSeries anomalyPoints = new TimeSeries();
|
||||
|
||||
double diff = anomalyPoints.getMax().getValue()-anomalyPoints.getMin().getValue();
|
||||
TimeSeries timeSeriesSmooth = timeSeriesService.smoothTimeSeries(timeSeries, "AddTrendAddSeason").getTimeSeries();
|
||||
|
||||
for (int i = 0; i < ts.getLength(); i++) {
|
||||
residual.addValue(new TimeSeriesValue(ts.getValue(i).getDate(), Math.abs(ts.getNumericValue(i) - tsResult.getNumericValue(i))));
|
||||
for (int i = 0; i < timeSeries.getLength(); i++) {
|
||||
residual.addValue(new TimeSeriesValue(timeSeries.getValue(i).getDate(),
|
||||
Math.abs(timeSeries.getNumericValue(i) - timeSeriesSmooth.getNumericValue(i))));
|
||||
}
|
||||
return null;
|
||||
|
||||
double diff = timeSeries.getMax().getValue()-timeSeries.getMin().getValue();
|
||||
|
||||
for (int i = 0; i < residual.getLength(); i++) {
|
||||
if (residual.getNumericValue(i)/diff > 0.05) {
|
||||
anomalyPoints.addValue(new TimeSeriesValue(residual.getValue(i).getDate(),
|
||||
timeSeries.getNumericValue(i)));
|
||||
}
|
||||
}
|
||||
|
||||
return anomalyPoints;
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user