2015-10-21 62 views
0

我有以下数据集:保持基于日期变量值SAS

Date  Action  
Jan2006  A 
Jan2006  A 
Jan2006  A 
Jan2006  N 
Jan2006  N 
Feb2006  A 
Feb2006  N 
Feb2006  N 
Mar2006  A 
Mar2006  N 
Mar2006  N 
Apr2006  A 
Apr2006  N 
    and so on until Dec2014. 

我想要做的就是让一个新的数据集,这样,当它的年份(即Jan2006)的开头,然后我想同时保留A和N,但仅在一年的剩余月份(二月,三月......至十二月)期间保持N.所以,上面的数据集应该看起来像下面这样:

Date  Action  
Jan2006  A 
Jan2006  A 
Jan2006  A 
Jan2006  N 
Jan2006  N 
Feb2006  N 
Feb2006  N 
Mar2006  N 
Mar2006  N 
Apr2006  N 
and so on until Dec2014. 

正如你可以看到,当它的月份(一月)的开始,那么我保持A和N,但n只有用剩下的几个月,直到我明年(1月)开始,然后重复这个过程(即2007年1月保留A和N,其余月份只剩下N,剩下的几年等等)。

要做到这一点,最好的方法是什么?我知道我可能可以使用某种有条件的语句,但是我无法用头围住它。

回答

1

可以使用的东西like..I希望你的约会日期格式,否则SUBSTR为“简”

if month(date) ne 1 and Action= "A" then delete; 

如果不是日期格式,然后

if substr(date,1,3) ne "Jan" and Action= "A" then delete; 
+0

完美!非常感谢! – user2916331