| 查看: 873 | 回复: 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) %% %% %% %% |
» 猜你喜欢
290求调剂
已经有7人回复
一志愿中南化学(0703)总分337求调剂
已经有8人回复
北科281学硕材料求调剂
已经有5人回复
求调剂一志愿南京航空航天大学289分
已经有3人回复
A区线材料学调剂
已经有5人回复
材料学硕297已过四六级求调剂推荐
已经有11人回复
316求调剂
已经有5人回复
一志愿西南交通 专硕 材料355 本科双非 求调剂
已经有5人回复
一志愿武汉理工材料工程专硕调剂
已经有8人回复
329求调剂
已经有8人回复
|
2楼2016-02-04 15:13:45













谢了)
回复此楼