資源簡(jiǎn)介
計(jì)算關(guān)聯(lián)維數(shù)的MATLAB程序,文件名是關(guān)聯(lián)維數(shù)的首字母,直接可以用。傻瓜式的。花了1個(gè)星期的心血啊。

代碼片段和文件信息
function?[prrpcrp]=glws(xmt)?
%函數(shù)名為關(guān)聯(lián)維數(shù)的首字母用于單串序列,多串到glsw;
%x為要分析的數(shù)據(jù);
%x=xlsread(‘d:\matworks\dbin.xls‘);
[m1n1]=size(x);
?n=m1;
[mm1mm]=size(m);
p=zeros(mm2);?%存放擬合系數(shù)的矩陣;
rr=zeros(20mm);%rr是相當(dāng)于篩子的那個(gè)距離,存放的是對(duì)數(shù);
cr=zeros(20mm);%cr是小于篩子距離的距離個(gè)數(shù),存放的是對(duì)數(shù);
%prr=zeros(20mm);%rr是相當(dāng)于篩子的那個(gè)距離,存放的是對(duì)數(shù);
%pcr=zeros(20mm);%cr是小于篩子距離的距離個(gè)數(shù),存放的是對(duì)數(shù);
scope=zeros(191);
msr=zeros(191);
???for?k=1:mm
??????tt=0;
??????nm=n-(m(k)-1)*t;%Nm為列數(shù);
??????nr=(nm-1)*nm/2;%Nr為距離的總個(gè)數(shù);
??????juli=zeros(nr1);%全部距離搞成一列的長(zhǎng)矩陣;
??????r=zeros(nmnm);%各列之間距離矩陣;
??????y=zeros(m(k)nm);%重構(gòu)相矩陣的值yij;
?????for?j=1:nm
?????????for?i=1:m(k)
????????????y(ij)=x(j+(i-1)*t);
?????????end
?????end
?????for?i=1:nm-1
?????????for?j=i+1:nm
?????????????for?kk=1:m(k)
???????????????r(ij)=r(ij)+(y(kkj)-y(kki))^2;
?????????????end
?????????????r(ij)=sqrt(r(ij));?
?????????????tt=tt+1;
?????????????juli(tt)=r(ij);
?????????end
?????end
??%進(jìn)行r和cr個(gè)數(shù)的計(jì)算;
????rmin=min(juli);
????rmax=max(juli);
????for?i=1:20??%每次把距離間隔分20分來(lái)慢慢加;
???????rr(ik)=(rmax-rmin)*(i+1)/21;?%距離取法值得研究一下;
???????for?j=1:nr
???????????if?juli(j)<=rr(ik)
????????????????cr(ik)=cr(ik)+1;
???????????end
???????end
???????rr(ik)=log(rr(ik));
???????cr(ik)=log(cr(ik)/nr);
?????end
????%rr=rr‘;
????tt=0;
????for?i=1:19
????????scope(i)=(cr(i+1k)-cr(ik))/(rr(i+1k)-rr(ik));%每點(diǎn)的斜率;
????????tt=tt+scope(i);
????????plot(iscope(i)‘-bd‘)hold?on;
????end
????tt=tt/19;%各相鄰點(diǎn)間斜率平均值;
????tshold=(max(scope)-min(scope))/2;%threshold,閾值;
????for?i=1:19
??????????msr(i)=abs(scope(i)-tt);??%各斜率與平均值的均方根,mean?square?root;
????end
????tt=0;
????for?i=2:18
??????????if?(msr(i-1)>tshold?&?msr(i+1)>tshold)|(msr(i-1)<0.001?&?msr(i+1)<0.001)
??????????????continue
??????????else
??????????????tt=tt+1;
??????????????prr(tt)=rr(ik);%符合條件的;
??????????????pcr(tt)=cr(ik);
??????????end
????end
?????p(k1:2)=polyfit(prrpcr1);%線性擬合,p為兩個(gè)數(shù),p1為斜率,p2為截距;
??end
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????2222??2018-09-15?14:46??glws.m
?????文件?????????184??2018-09-15?14:46??README.md
評(píng)論
共有 條評(píng)論