📄 kmeanscode.m
字号:
function [centro,nvoro] = lvqcode(X,centri)
[N,d] = size(X);
[M,dc] = size(centri);
if dc ~= d
disp('Dimensions from data and centroids is not equal?!')
return;
end
% d = data dimension
% N = number of points
% L = number of iterations
centro = zeros(size(centri));
nvoro = zeros(M,1);
for n = 1:N
datum = X(n,:);
diff = sqrt(sum((centri - ones(M,1)*datum).^2,2));
minpos = find(diff == min(diff));
minpos = minpos(1); % case there are two centroids, we choose the first one
nvoro(minpos) = nvoro(minpos) + 1;
centro(minpos,:) = centro(minpos,:) + datum;
end
npoint = nvoro; npoint(npoint==0) = 1;
centro = centro./(npoint*ones(1,d));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -