scipy.cluster.vq.
whiten#
- scipy.cluster.vq.whiten(obs, check_finite=True)[源代码]#
按每个特征为一批观察值进行归一化。
在运行 KMeans 之前,最好按观察值集合中每个特征维度除以其标准差(即“白化”它 - 如在“白噪声”中,其中每个频率具有相等的功率)。每个特征除以所有观察值中的标准差,使其单位方差。
- 参数:
- obsndarray
该数组的每一行是一个观察值。各列是在每个观察值中看到的特征。
>>> # f0 f1 f2 >>> obs = [[ 1., 1., 1.], #o0 ... [ 2., 2., 2.], #o1 ... [ 3., 3., 3.], #o2 ... [ 4., 4., 4.]] #o3
- check_finite布尔值,可选
是否检查输入矩阵是否仅包含有限数字。禁用它可能会提高性能,但如果输入确实包含无穷大或 NaN,则可能导致出现问题(崩溃、终止不了)。默认值:True
- 返回:
- 结果ndarray
包含按每列的标准差缩放后的 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]])