rowCovar

New in version 2.00.4.

语法

rowCovar(X, Y)

row 系列函数通用参数说明和计算规则请参考: 行计算系列(row 系列)

详情

逐行计算 XY 之间的协方差,返回一个长度与输入参数行数相同的向量。

例子

$ m1=matrix(2 8 9 12, 9 14 11 8,-3 NULL NULL 9)
$ m2=matrix(11.2 3 5 9, 7 -10 8 5,17 12 18 9)
$ rowCovar(m1, m2)
[-29.7333, -39, 3, 3.3333]

$ a= 110 112.3 44 98
$ b= 57.9 39 75 90
$ c= 55 64 37 78
$ x=array(DOUBLE[],0, 10).append!([a, b, c])
$ y=array(DOUBLE[],0, 10).append!([b, a, c])

$ rowCovar(x, y)
[-327.9475, -327.9475, 295]
//定义一个随机数据集x

$ x = rand(1.0, 1000000)

//自定义了一个聚合函数,窗口长度为5,滑动计算窗口内 x 和它排序后数据的协方差
$ timer moving(defg(x):covar(x, sort(x)), x, 5)
1928.888 ms

//movingWindowIndex 滑动选取 x 的5个元素的索引,movingTopNIndex 滑动选取 x 的5个元素排序后的索引。通过 rowCovar 函数计算
$ timer rowCovar(x[movingWindowIndex(x, 5)], x[movingTopNIndex(x, 5, 5)])
232.407 ms

相关函数: covar