作者andersonhaha (好山好水 多健康)
看板Statistics
标题[程式] SAS by ID ?
时间Tue Jun 21 01:44:57 2016
[软体程式类别]:
SAS
[程式问题]:
资料处理
[软体熟悉度]:
新手
[问题叙述]:
ID t1 同一id有多个不同时间的复数档 ID t1
1 0 t1 追纵时间;
1 1 挑出追纵时间>=2年 ID 的所有资料 (ex ID2 全部);
2 0 删除<2年id的所有资料 (ex ID1 全部) ==> 2 0
2 1 2 1
2 2 2 2
2 3 2 3
[程式范例]:
自己的想法是 t1>=2 挑出 ID;
Proc nodup; by id -> 建立追纵>=2年的 特定ID单数档
再从原始复数档案中, Proc SQL..Where id select from 特定ID
挑出只有 ID2 有追纵>=2年的所有资料
有比较简单的作法吗, 感恩!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.41.136.14
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1466444700.A.8C3.html
※ 编辑: andersonhaha (114.41.136.14), 06/21/2016 01:55:06
1F:→ keepingJBJ: select * from SRC where id not in () 06/22 00:05
2F:→ keepingJBJ: ()→select id from src group by 1 having max(t1)<2 06/22 00:06
3F:→ keepingJBJ: 把MAX(t1)<2的ID排掉应该就是你要的 06/22 00:07
4F:推 h14753951: select * from src group by id having(t1)>=2;quit; 06/22 09:26
5F:→ andersonhaha: 请问 group by 1 的意思是? 06/23 00:42
6F:→ keepingJBJ: 该查询式select後的第1个栏位,此即ID 06/23 01:16