以下这段程序总是出现:
statement : READ at line 72 column 3
ERROR: (execution) Matrix has not been set to a value.
应该是在循环过程中,由于存在f和g不同时存在的情况,导致无法生成S矩阵。
我的问题是,怎么用if语句来判断矩阵S不存在,从而进行后续操作?感谢
proc iml;
load N;
load T;
B_0={0 0,0 0};
use ba.t3;
do i=1 to 2;
do t=1 to 2;
f=N[i,1];
g=T[t,1];
read all where(SecCode=f & TDate=g) into S;
XX=0;
XY=0;
do ini=1 to 15;
XX=XX+S[ini,4]*S[ini,4];
XY=XY+S[ini+1,4]*S[ini,4];
end;
b_0=XY/XX;
B_0[i,t]=b_0;
end;
end;
print B_0;
quit;