- * Example generated by -dataex-. To install: ssc install dataex
- clear
- input float(stkcd year id mm)
- 1 2001 111 1
- 1 2002 111 1
- 1 2003 222 0
- 1 2004 222 0
- 1 2005 222 0
- 2 2004 555 1
- 2 2005 555 1
- 4 2003 111 1
- 4 2004 111 1
- 4 2005 777 1
- 3 2002 444 0
- 3 2003 444 0
- 3 2004 666 1
- 3 2005 666 1
- 5 2001 888 0
- 5 2002 888 0
- 5 2003 999 0
- 5 2004 888 1
- 5 2005 888 1
- 5 2006 999 0
- 5 2007 999 0
- end
希望得到的结果是:
若stkcd在当前年度的id所对应的前一种id的mm为0,那么保留当前id和前一种id所对应的所有年份的样本
若stkcd在当前年度的id的以前年度未出现过其他种类的id,那么不论mm为何值,保留当前id所对应的所有年份的样本
(有些复杂,不知道表达清楚了没有)
以stkcd为5的样本为例:
stkcd year id mm
5 2001 888 0
5 2002 888 0
5 2003 999 0
5 2004 888 1
5 2005 888 1
5 2006 999 0
5 2007 999 0
2002年以前id只有一种888,那么就保留2002年及以前年度的样本;
2003年的id是999,以前年度有过别的id,即888,但所对应的mm是0,所以保留2003年及相邻id的年度样本;
2005年的对应的前一种id的mm为0,且那么保留当年id和前一种id对应年份的样本;
2006年的对应的前一种id的mm为1,不保留当前id所对应的当年样本;
ps:重复的样本保留一次
即结果为:
stkcd year id mm
5 2001 888 0
5 2002 888 0
5 2003 999 0
5 2004 888 1
5 2005 888 1


雷达卡



京公网安备 11010802022788号







