全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5434 11
2014-11-15
悬赏 50 个论坛币 已解决
复制代码


运行后出现
2014-11-15_174015.jpg

如何解决?谢谢!

Book2.xls
大小:(15.5 KB)

 马上下载






最佳答案

pobel 查看完整内容

1. SQL 后去掉空格: 加一句 %let gcsex=&gcsex; 2. retain那句去除空格 retain fmtname "%trim(&gcsex.)f";
二维码

扫码加我 拉你入群

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

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

全部回复
2014-11-15 17:42:27
dxystata 发表于 2014-11-17 13:52
使用strip无效!
1. SQL 后去掉空格:
  加一句 %let gcsex=&gcsex;

2. retain那句去除空格
        retain fmtname "%trim(&gcsex.)f";
二维码

扫码加我 拉你入群

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

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

2014-11-15 20:11:01
楼主看到log里面SEX和F之间有很大的空格吗?楼主的本意是生成一个变量fmtname,值为SEXF,作为格式的名字,但是格式的名字里面不能有空格的存在,那些空格估计是因为生成宏变量gcsex时留下的,所以做法有两种:
1. select strip(Value) into :gcsex
2.直接对“&gcsex.f”进行处理,处理方法就是用tranwrd或者compress函数对空格进行替换,具体的,楼主先自己试试看,实在不行,我会给出代码。
二维码

扫码加我 拉你入群

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

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

2014-11-17 13:52:25
sniperhgy 发表于 2014-11-15 20:11
楼主看到log里面SEX和F之间有很大的空格吗?楼主的本意是生成一个变量fmtname,值为SEXF,作为格式的名字, ...
使用strip无效!
二维码

扫码加我 拉你入群

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

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

2014-11-17 15:56:43
pobel 发表于 2014-11-17 15:42
1. SQL 后去掉空格:
  加一句 %let gcsex=&gcsex;
为什么sql后会有空格呢?谢谢!
二维码

扫码加我 拉你入群

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

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

2014-11-17 16:15:01
dxystata 发表于 2014-11-17 15:56
为什么sql后会有空格呢?谢谢!
1. 首先,如果SELECT出的值前后有空格,SQL INTO创建宏变量过程中不会去掉前后的空格。
2. (猜测)用SQL INTO创建的宏变量的长度似乎取决与SELECT的变量长度。
例如,如果变量value的长度是8,那INTO做的宏变量gcsex的值也会是8位。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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