scipy.cluster.vq.

whiten#

scipy.cluster.vq.whiten(obs, check_finite=True)[源代码]#

在每个特征的基础上对一组观测值进行归一化。

在运行 k-均值之前,最好将观测值集合的每个特征维度按其标准差进行重新缩放(即“白化”它 - 如同“白噪声”那样,每个频率都具有相同的功率)。每个特征除以其在所有观测值上的标准差,以使其具有单位方差。

参数:
obsndarray

数组的每一行都是一个观测值。列是在每次观测期间看到的特征。

>>> #         f0    f1    f2
>>> obs = [[  1.,   1.,   1.],  #o0
...        [  2.,   2.,   2.],  #o1
...        [  3.,   3.,   3.],  #o2
...        [  4.,   4.,   4.]]  #o3
check_finitebool,可选

是否检查输入矩阵是否仅包含有限数字。禁用此选项可能会提高性能,但如果输入包含无穷大或 NaN,则可能会导致问题(崩溃,非终止)。默认值:True

返回:
resultndarray

包含按每列的标准差缩放的 obs 中的值。

示例

>>> import numpy as np
>>> from scipy.cluster.vq import whiten
>>> features  = np.array([[1.9, 2.3, 1.7],
...                       [1.5, 2.5, 2.2],
...                       [0.8, 0.6, 1.7,]])
>>> whiten(features)
array([[ 4.17944278,  2.69811351,  7.21248917],
       [ 3.29956009,  2.93273208,  9.33380951],
       [ 1.75976538,  0.7038557 ,  7.21248917]])