資源簡介
本密度聚類算法dbscan是基于周志華老師《機器學習》介紹編程的,經檢驗效率較高
代碼片段和文件信息
function?[cu?k]=dbscan(dataEpsMinPts)
%基于密度聚類的函數程序
%函數調用為:
%[cu?k]=dbscan(dataEpsMinPts);
%其中cu為分類的簇,k是分類數,data為輸入的待聚類的數據,Eps為epslion領域,MinPts為epslion領域內的樣本個數
%有問題可聯系郵箱1271104833@qq.com
[mn]=size(data);
%?Eps=((prod(max(data)-min(data))*k*gamma(0.5*n+1))/(m*sqrt(pi^n)))^(1/n);
for?i=1:m
????for?j=i:m
????????dis(ij)=norm(data(i:)-data(j:));
????end
end
dis=triu(dis0)+tril(dis‘-1);??%矩陣對角對稱得到各個點距所有點的距離
%找出所有核心對象
omega=[];
for?i=1:m
????ind=length(find(dis(i:) ????if?ind>=MinPts
????????omega=[omega?i];
????end
end
%判斷是否有核心對象
if(isempty(omega))
????error(‘參數設置原
- 上一篇:單縫衍射菲涅爾衍射 弗朗禾費衍射
- 下一篇:簡易kcf推導演示
評論
共有 條評論