比较2D数据/散点图集

mcn*_*lty 6 language-agnostic algorithm graphics cluster-analysis similarity

我有2000组数据,每组数据包含1000多个2D变量.我希望根据相似性将这些数据集聚集到20-100个集群中.但是,我在提出一种比较数据集的可靠方法时遇到了麻烦.我尝试了一些(相当原始的)方法并完成了很多研究,但我似乎找不到任何适合我需要做的事情.

我已经在下面发布了3组我的数据.数据在y轴上以0-1为界,并且在x轴上在~0-0.10范围内(实际上,理论上可以大于0.10).

数据的形状和相对比例可能是最重要的比较.但是,每个数据集的绝对位置也很重要.换句话说,每个单独点与另一个数据集的各个点的相对位置越接近,它们就越相似,然后需要考虑它们的绝对位置.

绿色和红色应该被认为是非常不同的,但推动是推,它们应该比蓝色和红色更相似.

http://img153.imageshack.us/img153/6730/screenshot20110204at004.png

我试过:

  • 根据总体过剩和偏差进行比较
  • 将变量分成坐标区域(即(0-0.10,0-0.10),(0.10-0.20,0.10-0.20)......(0.9-1.0,0.9-1.0))并根据区域内的共享点比较相似度
  • 我已经尝试测量数据集中距离最近邻居的平均欧氏距离

所有这些都产生了错误的结果.我在研究中找到的最接近的答案是" 多组2D坐标的适当相似性度量 ".然而,那里给出的答案建议比较质心中最近邻居之间的平均距离,我认为这对我来说不适合作为方向,对于我的目的来说,距离的距离同样重要.

我可能会补充说,这将用于为另一个程序的输入生成数据,并且只会偶尔使用(主要用于生成具有不同数量的簇的不同数据集),因此半耗时的算法不是不可能的.

Dr.*_*ius 1

分两步

1)第一:区分布鲁斯。

计算平均最近邻距离,直到截止值。选择类似于下图中黑色距离的截止值:

在此输入图像描述

蓝色配置,因为它们更分散,会给您带来比红色和绿色更好的结果。

2)第二:区分红色和绿色

忽略最近邻距离大于或等于较小值(例如前一个距离的四分之一)的所有点。对邻近度进行聚类,以获得以下形式的聚类:

在此输入图像描述在此输入图像描述

丢弃少于 10 个点(左右)的簇。对于每个簇运行线性拟合并计算协方差。红色的平均协方差将比绿色高得多,因为绿色在此比例上非常一致。

你在这。

哈!