全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3885 4
2013-01-05
为什么 执行 enddate=catx(day,month,'09');的结果值
总是按照'monthday09'这个顺序呢?可以保证初始数据没有对应错。

而且如果按照enddate=catx(‘09’,day,month);执行,
出来的值是‘day09month’这个顺序。

所有的字段, month,day,都是2位字符。

是哪里出错了啊?
二维码

扫码加我 拉你入群

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

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

全部回复
2013-1-5 12:36:24
楼主对catx函数理解有误。
CATX(delimiter, item-1 <, … item-n> )
第一个参数是分隔符。在以后各个参数间插入作为分隔。

楼主的需求,可能cats函数更合适。
enddate=cats(day,month,'09')


二维码

扫码加我 拉你入群

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

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

2013-1-5 12:46:22
data _null_;
   separator=' ';
day='11'; month='aug';
/*enddate=catx('2009',month,day);*/
enddate=compress(catx(separator,'2009',month,day));
/*enddate=cat('2009',month,day);*/
put enddate;
run;
二维码

扫码加我 拉你入群

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

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

2013-1-5 13:03:36
明白了,是我搞错了,谢谢两位的回复!
什么时候能像你们两位一样把SAS用这么顺溜就好了.
二维码

扫码加我 拉你入群

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

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

2014-1-23 21:48:26
学习了
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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