(Matlab问题)
我有一组数据点,我想将它们聚集到预定义的点上。
我的数据点是一个MxN矩阵。每一行M是一条曲线。我想将每条曲线分配给一组给定的曲线PxN。例如,P=5,5条受欢迎的曲线。
因此,最终它应该将MxN的每条曲线赋给PxN中的一条曲线。
我能想到的最简单的方法就是使用0次迭代的kmeans。使用相关性给我带来了糟糕的结果。在Matlab中有没有一种简单的方法可以做到这一点?
非常感谢你的回复。干杯,金宝
发布于 2017-04-19 00:01:32
我自己解决的,诸如此类
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是您所分配的组的索引。
https://stackoverflow.com/questions/43483380
复制