| 查看: 867 | 回复: 1 | |||
[交流]
请问有没有虫友在搞多尺度熵(MSE),有没有相关的matlab程序?
|
|
我最近在做多尺度熵,网上找到一段程序,不知道可不可用,贴一下,请各位指教: (如果有人有不同的多尺度熵matlab程序,能不能也贴一下 谢了)%% 求解多尺度熵 Multiscale Entropy clc clear all load X11b.mat s x=s(1:128,1); k=0; t=2;% 尺度因子,可以取1~20 N=floor(length(x)/t); p= 0.20; % p 可以选择 在 0.1~0.25 r=p*std(x) for i=1:N for j=1+(i-1)*t:i*t k=k+x(j); end y(i)=k/t; k=0; end %% 求解m=2 m=2; ph2=0; num=zeros(N-m+1); c=zeros(N-m+1); for i=1:N-m+1 for j=1:N-m+1 if j~=i d(i,j)=max([abs(y(i+0)-y(j+0)) abs(y(i+1)-y(j+1))]); end end end for i=1:N-m+1 for j=1:N-m+1 if d(i,j)<r num(i)=num(i)+1; end end c(i)=num(i)/(N-m); ph2=ph2+c(i) end ph2=ph2/(N-m+1); %% 求解m=3 m=3; ph3=0; num=zeros(N-m+1); c=zeros(N-m+1); for i=1:N-m+1 for j=1:N-m+1 if j~=i d(i,j)=max([abs(y(i+0)-y(j+0)) abs(y(i+1)-y(j+1)) abs(y(i+2)-y(j+2))]); end end end for i=1:N-m+1 for j=1:N-m+1 if d(i,j)<r num(i)=num(i)+1; end end c(i)=num(i)/(N-m); ph3=ph3+c(i); end ph3=ph3/(N-m+1); %% 求得多尺度熵 MSEn=log(ph2/ph3) %% %% %% %% |
» 猜你喜欢
情人节自我反思:在爱情中有过遗憾吗?
已经有6人回复
基金正文30页指的是报告正文还是整个申请书
已经有4人回复
今年春晚有几个节目很不错,点赞!
已经有6人回复
球磨粉体时遇到了大的问题,请指教!
已经有15人回复
过年走亲戚时感受到了所开私家车的鄙视链
已经有5人回复
江汉大学解明教授课题组招博士研究生/博士后
已经有3人回复
|
2楼2016-02-04 15:13:45













谢了)
回复此楼