Este tema describe cómo utilizar las funciones de detección de valores máximos para encontrar el valor máximo local de datos de series temporales dentro de una ventana específica.
ts_find_peaks
Formato de la función:
* and h : nu2h05202.nu8 and m: NET | select ts_find_peaks(stamp, value, 30) from (select '("__time__" - ("__time__" % 10))' as stamp, avg(v) as value from log GROUP BY stamp order by stamp)
A continuación se listan los parámetros del formato de la función.
|
Parámetro |
Descripción |
Valor |
|
x |
La secuencia temporal. Los puntos en el tiempo se ordenan de forma ascendente a lo largo del eje horizontal. |
Cada punto en el tiempo es una marca de tiempo Unix. Unidad: segundos. |
|
y |
La secuencia de datos numéricos correspondiente a cada punto en el tiempo especificado. |
N/A. |
|
winSize |
La longitud mínima de la ventana de detección. |
El valor del parámetro es de tipo de dato long, con un rango de 1 hasta la longitud de los datos de la serie temporal. Se recomienda establecer este parámetro en una décima parte de la longitud real de los datos. |
Ejemplo:
-
La sentencia de consulta es la siguiente:
* and h : nu2h05202.nu8 and m: NET | select ts_find_peaks(stamp, value, 30) from (select __time__ - __time__ % 10 as stamp, avg(v) as value from log GROUP BY stamp order by stamp) La siguiente figura muestra el resultado de salida.

A continuación se listan los elementos de visualización.
Elemento de visualización | Descripción | |
Eje horizontal | unixtime | La marca de tiempo de los datos de la serie temporal. Unidad: segundos. Ejemplo: 1537071480. |
Eje vertical | src | Los datos sin procesar. Ejemplo: 1956092.7647745228. |
peak_flag | Indica si el valor numérico en el punto de tiempo es el valor máximo. Valores válidos:
| |