全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1741 2
2016-12-06
悬赏 50 个论坛币 已解决
2016-12-06_081207.png
如何从数据集中将某个变量的format存为宏变量,但format中不包含长度。谢谢!
比如变量ALLERGYN,得到的format为HAVE.

最佳答案

prince315 查看完整内容

一个参考思路: 1. Proc Content将数据集的内容输出成一个新data,将需要的变量及其format保留 2. 提取format这个字符串,按照规律去的format而不含长度,如简单的将数字compress掉 3. 将处理后的字符输出成宏变量,如call symput来实现
二维码

扫码加我 拉你入群

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

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

全部回复
2016-12-6 08:20:29
一个参考思路:
1. Proc Content将数据集的内容输出成一个新data,将需要的变量及其format保留
2. 提取format这个字符串,按照规律去的format而不含长度,如简单的将数字compress掉
3. 将处理后的字符输出成宏变量,如call symput来实现
二维码

扫码加我 拉你入群

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

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

2016-12-7 14:00:46
楼上的思路挺好,不过有一个可能会遇到的bug:
当format中包含数字的时候(如format是HA1VE.),compress去掉数字可能会出错。

下面是一个sample

复制代码

复制代码


这种方法读取的format不含尾部的数字,然后用call symput/symputx创建宏变量。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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