聚类分布


10

我有几个发行版(下图中的10个发行版)。 分布

实际上,这些是直方图:在x轴上有70个值,它们是溶液中某些粒子的大小,对于x的每个值,y的对应值是大小在x值附近的粒子所占的比例。

我想对这些分布进行聚类。目前,例如,我使用具有欧几里得距离的层次聚类。我对距离的选择不满意。我已经尝试过诸如Kullback-Leibler之类的信息理论距离,但是数据中有很多零,这会造成困难。您是否有适当距离和/或其他聚类方法的建议?

Answers:


16

我了解您,所有分布都可能采用相同的70个离散值。然后,它会很容易为您比较累积分布的曲线(累计比较曲线是比较分布的一般方式)。这将是针对形状,位置和传播差异的综合比较。

因此,以(A,B,...等是分布)的形式准备数据

Value CumProp_A CumProp_B ...
1       .01       .05
2       .12       .14
...     ...       ...
70      1.00      1.00

并计算分布之间的距离矩阵。提交到层次结构集群(我建议使用完整的链接方法)。什么距离 好吧,如果您认为两条累积曲线(如果仅相差一个值(b))相差很大,请使用Chebyshev距离。如果您认为两条累积曲线只有在一个较大的值范围(c)稳定在另一曲线上时才非常不同,请使用自相关距离。如果曲线之间的任何局部差异很重要(a),请使用曼哈顿距离。

在此处输入图片说明

PS自相关距离只是累积曲线X和Y之间差异的自相关的非归一化系数:

i=2N(XY)i(XY)i1


很好-非常感谢!我会做这个,明天
斯特凡纳·洛朗

自相关距离可能为负。真的是个好定义吗?
斯特凡劳伦

我忘了问另一个问题:为什么要推荐完整的链接?
斯特凡劳伦

您可以将零个负乘积项(如果有)设置为零。我不要求完全链接,而是警告Ward或质心之类的“几何”方法,因为距离不是欧几里得。我还认为像完全链接这样的“膨胀式”方法将随您的喜好
ttnphns 2012年

4

如果您的数据是直方图,则可能需要研究适当的距离函数,例如“直方图相交距离”。

有一个叫做ELKI的工具,它具有各种各样的聚类算法(比k均值和层次聚类更现代),甚至还包括一个直方图相交距离的版本,您可以在大多数算法中使用。您可能想尝试其中的一些算法。从上面您给出的情节中,我不清楚您想做什么。将各个直方图分组,对吗?从上面显示的10个来看,可能没有群集。


谢谢。但是我正在寻找R或SAS中可用的工具。然后,上面的十个发行版只是一个示例,我有很多要分布的发行版。
斯特凡洛朗

2

您可能需要使用某些特征提取技术来导出k均值或其他类型聚类的描述符。

一种基本方法是将某种分布适合您的直方图,并将其参数用作描述符。例如,您似乎具有双峰分布,可以用2个均值和2个标准差来描述。

另一种可能性是对直方图计数的前两个或三个主成分进行聚类。

备选地,可以使用小波方法。

本页说明了处理细胞外尖峰时的处理方法。数据是不同的,但是这个想法应该适用于您的情况。您还将在底部找到许多参考。

http://www.scholarpedia.org/article/Spike_sorting

在R中,您可以使用princompprcomp函数来计算峰的主成分。在这里,您将找到有关R中PCA的教程。

对于小波,您可以查看wavelets包装。

使用该kmeans功能可以实现k-均值聚类。


谢谢,我会尽可能看您的建议。
斯特凡洛朗
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.