• 大小: 1KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: Matlab
  • 标签: matlab  dbscan  

资源简介

本密度聚类算法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(‘参数设置原

评论

共有 条评论