如何将数据点聚集到预定义区域?
Posted
技术标签:
【中文标题】如何将数据点聚集到预定义区域?【英文标题】:How to cluster data points to predefined regions? 【发布时间】:2017-09-14 22:54:06 【问题描述】:(Matlab 问题)
我有一组数据点,我想将它们聚集到预定义的点。
我的数据点是一个 MxN 矩阵。每行 M 是一条曲线。我想将每条曲线分配给一组给定的曲线 PxN。例如。 P=5, 5 条追捧曲线。
所以最后它应该将 MxN 的每条曲线分配给 PxN 中的一条曲线。
我能想到的最简单的方法是使用 0 次迭代的 kmeans。 使用相关性给了我很差的结果。 Matlab中是否有一种简单的方法可以做到这一点?
非常感谢您的回答。 干杯 金博
【问题讨论】:
自己解决了:for WC=1:length(DataSet(:,1)) for i=1:length(centers(:,1)) dist(i,WC) = sum( ( (数据集(WC,T) - 中心(i,T)).^2));结束 [temp, idx_temp] = min(dist(:,WC)) idx_dcb(WC) = idx_temp;结束 “聚类”意味着算法必须推断聚类结构。你想做分类:用预定义的类标记点。尝试最近邻分类。 【参考方案1】:自己解决了,类似的事情
T=1:360
centers = rand(4,360)
DataSet = rand(200,360)
for WC=1:length(DataSet(:,1))
for i=1:length(centers(:,1))
dist(i,WC) = sum( ((DataSet(WC,T) - centers(i,T)).^2));
end
[temp, idx_temp] = min(dist(:,WC))
idx_dcb(WC) = idx_temp;
end
idx_dcb 是您分配的组的索引。
【讨论】:
使用短距离以上是关于如何将数据点聚集到预定义区域?的主要内容,如果未能解决你的问题,请参考以下文章
如何将自定义 css 和 js 文件添加到 wordpress 的管理区域 [关闭]
DROP AGGREGATE - 删除一个用户定义的聚集函数