全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1908 7
2015-06-10
各位大神,请教一下:
我有1组数据,该数据会每天更新。我想得出一个统计结果。步骤如下:
1,首先要自动调取当天的日期。
2,确定之后,我要调取昨天的日期,然后匹配昨天日期对应的数据。
3,把这个结果输出来。
eg:
date            a      b
20150601   1      2
20150602    3     4
20150603     5     6
......
20150608      7     8
20150609      9     10

我今天想得到的结果是:
20150609    9   10
明天就应该是
20150610    11   12
自动更新,这个怎么实现啊?谢谢了
二维码

扫码加我 拉你入群

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

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

全部回复
2015-6-10 19:53:55
利用&sysdate.可以提取系统当天的日期
然后就可以直接用if,where等语句用data step或者sql提取昨日的数据
二维码

扫码加我 拉你入群

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

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

2015-6-11 08:08:34
WUPUQU 发表于 2015-6-10 19:53
利用&sysdate.可以提取系统当天的日期
然后就可以直接用if,where等语句用data step或者sql提取昨日的数据
能否写个代码出来呀。谢谢了
二维码

扫码加我 拉你入群

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

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

2015-6-11 18:13:14

data abc(drop=date rename=(date1=date));
input date $8. a  b ;
date1=input(date,yymmdd8.);
format date1 date9.;
datalines;
20150608 1 2
20150609 2 3
20150610 3 4
20150611 4 5
;
run;
%macro dat;
data abc1(drop=da);
set abc;
da=%sysfunc(inputn(&sysdate.,date9.));
if date=da-1 ;
run;
%mend dat;
%dat
二维码

扫码加我 拉你入群

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

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

2015-6-12 08:22:35
WUPUQU 发表于 2015-6-11 18:13
data abc(drop=date rename=(date1=date));
input date $8. a  b ;
date1=input(date,yymmdd8.);
1,谢谢你的回复。我还看不懂。保存下来后面学习吧。
2,我用了一个比较简单的方法。
就是today函数,然后在原始数据里面where一下,得到了对应的变量结果。很初级的做法。
我也不知道这样做的优缺点是啥。现在数据量还比较小。
二维码

扫码加我 拉你入群

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

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

2015-6-12 10:07:18
tyw226 发表于 2015-6-12 08:22
1,谢谢你的回复。我还看不懂。保存下来后面学习吧。
2,我用了一个比较简单的方法。
就是today函数,然 ...
都一样,只是我最近在看macro,直接就想到了这个
你那个代码更简单一点咯,不担心看不懂
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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