0

假设我有 24 行数据,每行代表一天中的一个小时。我想要实现的是实现一种可以检测数据趋势并将其分为 2 个块的算法——一个“好”块和一个“坏”块。例如,在所附图像中,您可以看到在第 6 行一个好的块开始并在第 19 行结束。第 0 行也有一个很好的分数,但它不是块的一部分,所以算法应该知道如何处理这种情况。我认为这是关于集群的,但找不到适合我们需求的足够简单的东西。期待任何建议。

在此处输入图像描述

4

1 回答 1

1
start = -1
Append a below-threshold value to the end of the data array x[]
For i from 1 to n:
    If x[i] >= thresholdValue:
        if start == -1:
            start = i
    Else:
        If start != -1 and i - start >= thresholdLength:
            ReportGoodBlock(start, i-1)
        start = -1
于 2016-03-07T10:27:19.900 回答