我知道我可以使用以下代码获取K-means集群中特定集群的内容,并使用scikit-learn。
order_centroids = model.cluster_centers_.argsort()[:, ::-1]
terms = vectorizer.get_feature_names()
for i in range(true_k):
print "Cluster %d:" % i,
for ind in order_centroids[i, :10]:
print ' %s'
我很恼火,因为我使用了(必须的)两个等价的方法。我的目标是将一个图聚类到不同的组中。为此,一方面我“手工”计算fiedler:
import networkx as nx
import numpy.linalg as la
g1 = nx.from_numpy_matrix(A.values )
A = nx.adjacency_matrix(g1)
D = np.diag(np.ravel(np.sum(A,axis=1)))
L=D-A
l, U = la.eigh(L)
# fiedler
f = U[:,1]
labels = np.ravel(np.sign(f))
coord
import csv
import numpy as np
from sklearn.cluster import SpectralClustering
reader = csv.reader(open("/Users/Desktop/user2.csv","rU"),
dialect=csv.excel_tab)
x = list(reader)
result = np.array(x).astype('float')
lena = resu
我正在做一个项目,在这个项目中,我必须动态地聚集对象相对于一个坐标的位置。所以我基本上是在处理后续的帧,每个帧代表一个一维数据集。聚类背后的直觉是由与集群内其他点相似的点组成集群,这些点可以自然地连接起来。利用光谱聚类的能力,根据点的连通性而不是绝对位置进行聚类,并通过距离的非线性变换来设置rbf核。然而,在某些帧中,该算法会导致非自然分配。一个例子是
import numpy as np
from sklearn.cluster import SpectralClustering
X = np.array([[51.08354988], [57.10594997], [70.5125999
我用一个简单的散点图比较了两个栅格,发现我有两个看起来不同的群体:
现在我正在尝试提取每个群体的位置(通过分离行ID,例如)因此,我可以看到它们在栅格中的位置,也许还能理解为什么我会有这样的行为。下面是一个可重复使用的示例:
X <- seq(1,1000,1)
Z <- runif(1000, 1, 2)
A = c(1.2 * X * Z + 100)
B = c(0.6 * X * Z )
df = data.frame(X = c(X,X), Y = c(A,B))
plot(df$X,df$Y)
此外,我的原始数据有大约1,000,000行,因此该解决方案还需要支
我收集了一堆2012-2018年的人口普查数据。为了比较大都会统计区域(MSA),我想应用一些聚类算法。理想情况下,一旦我运行了集群算法,我希望看到哪个MSA可以与另一个相比较。
我选择的管理集群的特性如下:
'Bachelors+',
'Estimate Total 10,000 to #qcStackCode#14,999',
'Estimate Total 100,000 to #qcStackCode#124,999',
'Estimate Total 125,000 to #qcStackCode#149,999
在进行任何真正的编码之前,我正在尝试仔细考虑我的过程。然而,真的很容易被弄糊涂。
比如说,我有100种乐器,一年来我每天都知道它们的价格走势。所以我可以创建一个运动矩阵
A =[[I1-1, I2-1, .... I100-1], (I1-1 is price for instrument 1 on day 1)
[I1-2, I2-2, .... I100-2],
....
[I1-365, I-2365, .... I100-365]
]
然后,对于每种仪器,我可以计算出全年其他仪器之间的价格变动相关性。
C =[C1-2, C1-3,...C1-1