我正在尝试根据金融产品的交易数据进行聚类分析,并尝试测量它们随时间的变化。 我已准备好静态集群(基于第一季度的事务)。现在我希望看到他们在第二季度的移动,看看他们是否仍然在同一个集群中或移动到不同的集群。 我有每个聚类的聚类均值和半径,然后测量新的事务读数到聚类质心的距离并相应地对它们进行分组。 但我不知道如何测量这个距离。
我正在使用SAS进行分析。
答案 0 :(得分:0)
以下是使用proc fastclus
的示例。
/* Create initial clusters */
proc fastclus
data = sashelp.class
/* Output the cluster for each observation */
out = cluster1
maxclusters = 2
/* Output the centroids */
outseed = seed1;
var age height weight;
run;
/* Move the numbers around a bit to simulate a later snapshot */
data class2;
set cluster1;
drop distance;
rename cluster = cluster1;
age + rand("normal", 0, 5);
height + rand("normal", 0, 5);
weight + rand("normal", 0, 5);
run;
/* Apply the original clustering to the new data */
proc fastclus
data = class2
/* This output will contain the cluster and distance */
out = cluster2
maxclusters = 2
/* Pass the initial centroids */
seed = seed1
/* Output the new cluster centroids */
outseed = seed2
/* Prevent looking for better clusterings, change this if you want better clusters */
maxiter = 0;
var age height weight;
run;