请教各位,数据步中定义的宏变量用作数据集名的问题。
以下程序想实现的功能是输出data11中符合dataset1中数据值的记录,并以dataset1中数据值加一后缀命名保存。
例:想完成的功能是输出数据集Jack_11包含两条记录99和56,Mark_11包含一条记录78。
下面的程序在数据集命名时出现问题,data &LLIB..&TCN._&MON.; 其中TCN在上一个数据步中定义为dataset1中的值如Jack、Mark。但是用这种形式命名,每次会产生两个数据集,如Jack和_11。而在保存为txt文件时也有问题,文件名为Jack _11.txt,中间出现了若干个空格。
请教各位如何解决这一问题?有其他能够实现上述功能的方法,也请不吝赐教。谢谢。
[code:1udfjryn]
data dataset1;
input name $;
cards;
Jack
Mark
;
run;
data data11;
input name $ num;
cards;
Jack 99
Mary 88
Mark 78
Jack 56
Ben 98
Jim 66
;
run;
[/code:1udfjryn]
my level is low and I don't quite understand your program, but if all you want is to get rid of some annoying blanks, I do have a way.
Just replace your "call symput('TCN',name);" with "call symputx('TCN',name);", and you'll be fine.