代码如下:
data mylib.progress3;
set mylib.progress1;
pdate=date;
qstkcd=STKCD-0;
run;
data mylib.progress4;
set mylib.progress2;
if stkcd ne .;
run;
data mylib.progress5;
set mylib.progress4;
qstkcd=STKCD-0;
pdate=qdate-0;
run;
proc sort data=mylib.progress3;
by qstkcd pdate;
run;
proc sort data=mylib.progress5;
by qstkcd pdate;
run;
data mylib.progress6;
merge mylib.progress3 mylib.progress5;
by qstkcd pdate;
run;
报错的日志显示:
409
410 data mylib.progress6;
411 merge mylib.progress3 mylib.progress5;
ERROR: 变量 Stkcd 已定义为字符型和数值型。
412 by qstkcd pdate;
413 run;
NOTE: 由于出错,SAS 系统停止处理该步。
WARNING: 数据集 MYLIB.PROGRESS6 可能不完整。该步停止时,共有 0 个观测和 26 个变量。
WARNING: 数据集 MYLIB.PROGRESS6 由于该步已停止,而没有被替换。
NOTE: “DATA 语句”所用时间(总处理时间):
实际时间 0.02 秒
CPU 时间 0.01 秒
STKCD我没有显示啊,而且根据上面的代码,每个QSTKCD=STKCD-0,理论上来说不是已经都转成数字了嘛?为什么还会有影响?