跳至内容

Quantile

Quantile

返回矩阵/矢量元素或沿指定轴元素值的分位数。

double vector::Quantile(
  const double quantile      // quantile
   );

double matrix::Quantile(
  const double quantile      // quantile
   );

vector matrix::Quantile(
  const double quantile,     // quantile
  const int    axis          // axis
   );

参数

quantile

[输入] 欲计算的分位数,必须介于 0 和 1(含)之间。

axis

[输入] 轴。 0 — 水平轴,1 — 垂直轴。

返回值

分位数:标量或向量。

注意

‘quantile’ 参数取值范围 [0, 1]。 采用线性算法计算分位数。 正确计算分位数需要对序列进行排序。

举例

matrixf matrix_a={{1,2,3},{4,5,6},{7,8,9},{10,11,12}};
   Print("matrix_a\n",matrix_a);

   vectorf cols_quantile=matrix_a.Quantile(0.5,0);
   vectorf rows_quantile=matrix_a.Quantile(0.5,1);
   float matrix_quantile=matrix_a.Quantile(0.5);

   Print("cols_quantile ",cols_quantile);
   Print("rows_quantile ",rows_quantile);
   Print("quantile value  ",matrix_quantile);

   /*
   matrix_a
   [[1,2,3]
    [4,5,6]
    [7,8,9]
    [10,11,12]]
   cols_quantile [5.5,6.5,7.5]
   rows_quantile [2,5,8,11]
   quantile value  6.5
   */