第一范文网 - 专业文章范例文档资料分享平台

模糊聚类分析及matlab程序实现

来源:用户分享 时间:2025/6/1 15:06:36 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

模糊聚类分析及matlab程序实现

采用模糊数学语言对按一定的要求进行描述和分类的数学方法称为模糊聚

【1】

类分析。聚类分析主要经过标定和聚类两步骤。1 标定(建立模糊相似矩阵)

城市居民食品零售价格,第t时刻第i种食品的零售价记为x(i,t)。 相似矩阵R的构建方法:NTV法

设时间序列A(i,j)表示食品i在时间t的价格,其中i=1,2…42;t=1,2…39。

m?R(i,j)?1?k?1mk?1xik?xjk(其中i,j,k=1,2…42,m=39)

xik,xjk)?max(R?R(i,j)42*42

2 聚类

2.1 计算R的传递闭包:

对模糊相似矩阵R,依次用平方法计算,R2kkkkR*R?R时,则称R为传递闭包。

,R4,…,R2,…,当第一次出现

t【1】

【2】

2.2 开始聚类:

(1)令T={1,2,3…42},取xi?T(1) ,令X、Q为空集; (2)令j?0;

(3)若R(xi,j)???且xj?X,则令X?X?{j},Q?Q?{j}; (4)j?j?1;

(5)若j?n,返回(1);

(6)若Q为空集,怎输出聚类x,T?T-X; (7)xi?Q(1),Q?Q?{xi},返回(2)。

设置不同的置信水平?值,就可以得到不同的分类。

Matlab程序实现: A=data;

[N M] = size(A);

for i = 1:N for j = 1:N

R(i,j)=abs(1-sum(abs(A(i,:)-A(j,:)))/sum(max([A(i,:);A(j,:)])));

end end

for j=1:42 for i=1:42 y(i,j)=0;

for k=1:42

mn(k)=min(R(i,k),R(k,j)); end

y(i,j)=max(mn); end

end

numda=[1 0.9 0.95 0.85 0.8 0.75 0.55 0.7 0.655 0.35 0.255 0.25 0.2 0.15 0.1]; for i=1:42

TT(i)=i; end

for i=1:length(numda) disp ('当分类系数是'); disp(numda(i)); a=numda(i); T=TT;

disp ('分类为'); while 1 if ~isempty(T) xi=T(1); end

X=[];Q=[]; while 1

for j=1:42

if (y(xi,j)>=a)&isempty(intersect(X,j)) X=union(X,j); Q(length(Q)+1)=j; end end

if isempty(Q) disp(X); break else xi=Q(1); Q(1)=[]; end end

0.65 0.6 0.55 0.5 0.45 0.454 0.4 0.45 0.3 T=setdiff(T,X); if isempty(T) break end end end

搜索更多关于: 模糊聚类分析及matlab程序实现 的文档
模糊聚类分析及matlab程序实现.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c7vbn88dkjy570pk9t1t2_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top