| 查看: 878 | 回复: 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) %% %% %% %% |
» 猜你喜欢
316求调剂
已经有6人回复
346求调剂[0856]
已经有7人回复
一志愿山大07化学 332分 四六级已过 本科山东双非 求调剂!
已经有3人回复
310求调剂
已经有3人回复
机械专硕299求调剂至材料
已经有4人回复
070300化学319求调剂
已经有7人回复
08工科 320总分 求调剂
已经有6人回复
一志愿天津大学化学工艺专业(081702)315分求调剂
已经有12人回复
307求调剂
已经有3人回复
265求调剂
已经有3人回复
|
2楼2016-02-04 15:13:45













谢了)
回复此楼