📄 apen.m
字号:
function [ApEn_value,C_m,C_m_1] = ApEn(signal,m,r_factor)
% Estimate the Aproximate Entropy (ApEn) of a signal.
% m=1 or m=2
% r between 0.1*SD and 0.25*SD, where SD is the signal standard deviation
% N (signal length) between 75 and 5000;
% [ApEn_value] = ApEn(signal,m,r);
% Input variables:
% signal - signal
% m - pattern length
% r_factor - factor of the criterion of similarity r_factor*std(signal)
% Output variables:
% ApEn_value - ApEn calculated from the signal
% Optional output variables:
% C_m
% C_m_1
signal=signal(:)';
N=length(signal);
% C computation for the "m" pattern.
[C_m] = C_m_computation(signal,m,r_factor);
% C computation for the "m+1" pattern.
[C_m_1] = C_m_computation(signal,m+1,r_factor);
% Phi’s computation.
phi_m=mean(log(C_m));
phi_m_1=mean(log(C_m_1));
% Final ApEn computation.
ApEn_value=[phi_m-phi_m_1];
% -------------------------------------------------------------------
function [C_im] = C_m_computation(signal,m,r_factor)
X=[];C_im=[];n_im=[];max_dif=[];
N=length(signal);
% Construction of the X’s vectors.
for j=1:N-m+1
X(j,:)=signal(j:j+m-1);
end
% C computation.
for j=1:N-m+1
aux1=repmat(X(j,:),N-m+1,1);
dif_aux=abs(X-aux1);
n_im=0;
for k=1:N-m+1
if max(abs(dif_aux(k,:)))<r_factor*std(signal)
n_im=n_im+1;
end
end
C_im=[C_im; n_im/(N-m+1)];
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -