全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2040 2
2012-12-15
各位大侠,本人是sas初学者。现在走程序时遇到一个问题,我的指标包括evdate事件日和trddt交易日。现在需要选择一国在事件发生日前后的交易日数据,使用语句条件为 a.country=b.country and -300<=b.trddt-a.evdate<=100,但提示“ 使用“减法 (-)”的表达式要求数值类型”。现请问各位高手,我之前对evdate和trddt变量都用substr进行了修改,如trddt=substr(trddt,1,4)*10000+substr(trddt,6,2)*100+substr(trddt,9,2),难倒不是数值类型?我要如何修改才可以呢?请告知具体语句,谢谢!

二维码

扫码加我 拉你入群

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

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

全部回复
2012-12-15 22:59:06
We need to know what is the exact value of the date variable in character formats. Once the value is identified, a input function + a corresponding informat will do the job as in the example below.

data _null_;
trddt='2010-10-01';
trddt_num=input(trddt,yymmdd10.);
put trddt= trddt_num= trddt_num= date9.;

trddt='01OCT2010';
trddt_num=input(trddt,date9.);
put trddt= trddt_num= trddt_num= mmddyy10.;
run;
二维码

扫码加我 拉你入群

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

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

2012-12-16 19:20:44
谢谢指导啊,解决了
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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