问题描述:
matlab出错,Improper assignment with rectangular empty matrix.
代码如下,
function Y=evm(X)
n=length(X);
l=10;
k=n/l;
y1=ones(1,l);
y2=ones(1,l);
for i=1:l
y1(i)=log(abs(max(X(i*k-k+1:i+k))));
y2(i)=log(abs(min(X(i*k-k+1:i+k))));
end
ym1=mean(y1);
ym2=mean(y2);
s1=var(y1);
s2=var(y2);
a=pi/2/sqrt(6)*(1/s1+1/s2);
b=1-2/(1+exp(a*ym1-ym2));
Y=[a,b]; 提示错误是
? Improper assignment with rectangular empty matrix.
Error in ==> evm at 8
y1(i)=log(abs(max(X(i*k-k+1:i+k))));
大家看看是怎么回事.谢谢
代码如下,
function Y=evm(X)
n=length(X);
l=10;
k=n/l;
y1=ones(1,l);
y2=ones(1,l);
for i=1:l
y1(i)=log(abs(max(X(i*k-k+1:i+k))));
y2(i)=log(abs(min(X(i*k-k+1:i+k))));
end
ym1=mean(y1);
ym2=mean(y2);
s1=var(y1);
s2=var(y2);
a=pi/2/sqrt(6)*(1/s1+1/s2);
b=1-2/(1+exp(a*ym1-ym2));
Y=[a,b]; 提示错误是
? Improper assignment with rectangular empty matrix.
Error in ==> evm at 8
y1(i)=log(abs(max(X(i*k-k+1:i+k))));
大家看看是怎么回事.谢谢
问题解答:
我来补答展开全文阅读