全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
4741 2
2017-06-27
各位大佬,求助:


%let x=a b c;      /*a b c为三个变量
%let xf=出生日期 签署时间 年龄;    /*xf为三个变量的标签




data data;set data;
keep cn dn &x;


text="&xf"||":"||&x;   

text这块该怎么写才能实现下面的效果

cn  dn  text
1    1    出生日期 签署时间 年龄:变量a的值  变量b的值  变量c的值。


另外宏变量x若有n个变量,怎样用宏循环实现 列出一系列变量标签和变量值
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2017-6-27 12:53:40
&X只能解析出宏变量X的文本a b c,而不会生成变量a b c对应的值

可以试试text="&xf"||":"||a||b||c;
a/b/c空格可以用strip函数去掉
text="&xf"||":"||strip(a)||" "||strip(b)||" "||strip(c);
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2017-6-28 14:02:20
谢谢,已经解决了
text=compress("&varf"||":" %do i=1 %to &n;|| %if &m=3 %then put(&&var&i.,&&varfmt&i.);%else &&var&i.;||"," %end;||"&condif");
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群