📄 approximateentropy.m
字号:
%本程序实现脑电信号非线性特征参数--近似熵的计算%
%林宛华 中南大学生物医学工程医学图像与信号处理实验室 %
%E-mail: wanhualin01@163.com%
%2008年3月10日%
function ApEn=ApproximateEntropy(data,m,r)
EEG=EEG_data1;
N=length(EEG);
SD=sqrt((sum(EEG.^2)-((sum(EEG))^2)/N)/(N-1));%标准差
m=2;r=r*SD;
for k=1:2
for i =1:N-m+1
for j=1:m
X(i,j)=[EEG(i+j-1)];
end
end
smallerthanr=zeros(1,N-m+1);
for i=1:N-m
j=0;
while(j<N-m+1)
if(j==i-1)
j=j+2;
else
j=j+1;
end
distance=max(abs(X(i,:)-X(j,:)));
if(distance<r)
smallerthanr(i)=smallerthanr(i)+1;
end
end
end
%i取N-m+1
for j=1:N-m
distance=max(abs(X(N-m+1,:)-X(j,:)));
if(distance<r)%对每个i,统计距离小于r的数目
smallerthanr(N-m+1)=smallerthanr(N-m+1)+1;
%else
%smallerthanr(N-m+1)=smallerthanr(N-m+1);
end
end
for i=1:N-m+1
Cmr(i)=smallerthanr(i)/(N-m);%对每个i,统计距离小于r的数目与距离总数N-m的比值
if (Cmr(i)==0)
Cmr(i)=1;
end
lncmr(i)=logm(Cmr(i));%取自然对数
end
Qmr(k)=(sum(lncmr))/(N-m+1);%平均
m=m+1;%扩展成m+1维,再计算一遍
end
ApEn=Qmr(1)-Qmr(2);
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -