skbio.stats.composition.perturb

skbio.stats.composition.perturb(x, y)[源代码]

执行扰动操作。

状态:从0.4.0开始实验。

此操作定义为

\[x \oplus y = C[x_1 y_1, \ldots, x_D y_D]\]

\(C[x]\) 闭合操作是否定义为

\[C[x] = \left[\frac{x_1}{\sum_{i=1}^{D} x_i},\ldots, \frac{x_D}{\sum_{i=1}^{D} x_i} \right]\]

对一些人来说 \(D\) 维实向量 \(x\)\(D\) 是每个合成的组件数量。

参数:
  • x (array_like, float) -- 比例矩阵,其中行=成分,列=成分

  • y (array_like, float) -- 比例矩阵,其中行=成分,列=成分

返回:

一个比例矩阵,其中所有的值都不是零,并且每个组成(行)加起来等于1

返回类型:

numpy.ndarray, np.float64

示例

>>> import numpy as np
>>> from skbio.stats.composition import perturb
>>> x = np.array([.1,.3,.4, .2])
>>> y = np.array([1./6,1./6,1./3,1./3])
>>> perturb(x,y)
array([ 0.0625,  0.1875,  0.5   ,  0.25  ])