Var
Var
计算矩阵/向量元素值的方差。
double vector::Var();
double vector::Var(
const int ddof // delta 自由度
);
double matrix::Var();
vector matrix::Var(
const int axis // 轴
);
vector matrix::Var(
const int axis, // 轴
const int ddof // delta 自由度
);参数
- axis
[in] 轴。0 — 水平轴, 1 — 垂直轴。
- ddof
[in] “delta 自由度”:计算中使用的除数是 N-ddof,其中 N 表示元素的数量。默认情况下,ddof 为零。
返回值
方差:标量或向量。
请注意
方差是平均值的平方偏差的平均值,即 var = mean(x), 其中 x = abs(a - a.mean())**2。
平均值通常计算为 x.sum() / (N - ddof), 其中 N = len(x)。
ddof = 0 的表达式有时被称为“总体方差”。如果 ddof > 0(最常用的是1),则结果量有时称为“样本方差”。
示例
matrixf matrix_a={{10,3,2},{1,8,12},{6,5,4},{7,11,9}};
Print("matrix_a\n",matrix_a);
vectorf cols_var=matrix_a.Var(0);
vectorf rows_var=matrix_a.Var(1);
float matrix_var=matrix_a.Var();
Print("cols_var ",cols_var);
Print("rows_var ",rows_var);
Print("var value ",matrix_var);
/*
matrix_a
[[10,3,2]
[1,8,12]
[6,5,4]
[7,11,9]]
cols_var [10.5,9.1875,15.6875]
rows_var [12.666667,20.666666,0.66666669,2.6666667]
var value 11.916666984558105
*/