【发布时间】:2019-09-11 15:05:49
【问题描述】:
我有这个数据库:
data temp;
input ID date type ;
datalines;
1 10/11/2006 1
1 10/12/2006 2
1 15/01/2007 2
1 20/01/2007 3
2 10/08/2008 1
2 11/09/2008 1
2 17/10/2008 1
2 12/11/2008 2
2 10/12/2008 3
;
我想创建一个新列,在其中放置变量类型按 ID 从 1 更改为 2 的第一个日期,如下所示:
data temp;
input ID date type date_change_type1to2;
datalines;
1 10/11/2006 1 .
1 10/12/2006 2 10/12/2006
1 15/01/2007 2 .
1 20/01/2007 3 .
2 10/08/2008 1 .
2 11/09/2008 1 .
2 17/10/2008 1 .
2 12/11/2008 2 12/11/2008
2 10/12/2008 3 .
;
我已经尝试过这段代码,但它不起作用:
data temp;
set temp;
if first.type= 2 then date_change_type1to2=date;
by ID;
run;
提前感谢您的帮助!
【问题讨论】:
-
如果值变为 2,然后变为其他值,然后又变为 2,该怎么办?是否应该标记/选择两个日期?如果 ID 的第一个值为 2 会怎样?
-
@Tom 我没有这两种情况,但如果其他用户想使用下面建议的代码,请考虑一下!谢谢
标签: sas