TSRunningMed 函数计算运行窗口内的时间系列的中位数。只有在 Apply 函数内使用时此函数才有用。
TSRunningMed(value double precision, num_values integer) returns double precision; TSRunningMed(value real, num_values integer) returns double precision;
此函数是运行固定数量的元素,而非运行固定时间长度;因此,它可能不适用于非常规时间系列。
生成前 (num_values - 1) 个输出的窗口较短(第一个输出从第一个输入时间派生,第二个输出从前两个输入时间派生,依此类推)。输入中的 Null 元素也会导致窗口变短。
最后 k 个值的 DOUBLE PRECISION 运行中位数。
select stock_name, Apply('TSRunningMed($high, 10)', stock_data::TimeSeries(stock_bar)):: TimeSeries(one_real) from daily_stocks;