在 Stata 中替换循环

Replace loop in Stata

我有两个变量:患者 ID 和日期。我数据库中的许多患者都是重复的。我想保留重复,但给每个患者申请最早出现的日期。

例如:

ID    Date
1     8/9/07
1     6/3/07
1     11/15/08
2     8/6/06
2     8/6/06
2     11/5/09

会变成

ID    Date
1     6/3/07
1     6/3/07
1     6/3/07
2     8/6/06
2     8/6/06
2     8/6/06

第一个日期只是最短日期。对每个患者的日期进行排序,第一个日期和最小的日期是一个并且相同,因为日期是数字。

bysort id (date) : gen firstdate = date[1] 

请注意,我故意没有覆盖您原来的日期变量。首先,如果我搞砸了代码,我需要重新读入数据。其次,您可能会在以后决定这些日期是否有用。

了解下标和 by: 的使用。

有关一个教程,请参阅 here

有关专门针对您的问题的常见问题解答,请参阅 here