特征聚集转换的结果

Results from transformation with Feature Agglomeration

我在带有数据的矩阵上使用来自 scikit-learn 的特征聚集对象的变换函数。在 运行 变换函数之后,在生成的矩阵(代码中的 X_reduced )上,第一个元素是簇 0 的聚集结果,第二个元素是簇 1 的聚集结果,依此类推?还是随机的?

from sklearn import Cluster
agglo = cluster.FeatureAgglomeration(n_clusters=100)
agglo.fit(X_train_prepared)
X_reduced = agglo.transform(X_train_prepared)

相对于您从 agglo.labels_ 获得的标签——是的,结果矩阵的第一列是簇零。

即以下成立:

from sklearn import cluster
from sklearn.datasets import load_iris, make_blobs
import pandas as pd
agglo = cluster.FeatureAgglomeration(n_clusters=95)
X,y = make_blobs(n_features=100)
agglo.fit(X)
X_reduced = agglo.transform(X)
# first column in reduced is the mean of all columns that lie in the first cluster
>>> all(X_reduced[:,0] == X[:,(agglo.labels_ == 0).nonzero()[0]].mean(axis=1))
True