[程式] SAS 同ID中設定最小值為reference
------------------------------------------------------------------------
[軟體程式類別]:SAS
[程式問題]:資料整理
[軟體熟悉度]:
中(3個月到1年)
[問題敘述]:
1. 如何在同ID中將他的最小值設為reference
資料形式:
NO ID checkyear value
1 A001 2008 3 <---A001中2008年最早
2 A001 2009 5
3 A001 2011 8
4 A002 2012 5 <---A002中2012年最早
5 A003 2005 1 <---A003中2005年最早
6 A003 2009 7
7 A003 2010 8
8 A003 2012 10
因此想將NO1.4.5令其t=0,請問該如何用SAS code把這些值選出來?
2. 如何轉置多個VAR至同一列上?
原資料形式:
NO ID checkyear aa bb
1 A001 2008 3 200
2 A001 2009 5 230
3 A001 2010 8 240
4 A002 2010 5 250
5 A003 2008 1 270
6 A003 2010 8 179
希望得到的格式:
ID 2008_aa 2008_bb 2009_aa 2009_bb 2010_aa 2010_bb
A001 3 200 5 230 8 240
A002 5 250
A003 1 270 8 179
如果用
PROC TRANSPOSE DATA=data OUT=data_1(DROP=_name_);
VAR aa bb;
BY id;
ID checkyear;RUN;
會變成
ID aa bb
A001 3
A001 200
...
請問要如何得到想要的格式呢?
謝謝大家!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.240.102.6
→
10/28 00:49, , 1F
10/28 00:49, 1F
→
10/28 00:49, , 2F
10/28 00:49, 2F
→
10/28 11:26, , 3F
10/28 11:26, 3F
→
10/28 11:26, , 4F
10/28 11:26, 4F
→
10/28 11:27, , 5F
10/28 11:27, 5F
→
10/28 11:28, , 6F
10/28 11:28, 6F
→
10/28 11:28, , 7F
10/28 11:28, 7F
→
10/28 11:30, , 8F
10/28 11:30, 8F
→
10/28 11:31, , 9F
10/28 11:31, 9F
→
10/28 11:31, , 10F
10/28 11:31, 10F
→
10/28 11:32, , 11F
10/28 11:32, 11F
→
10/28 11:32, , 12F
10/28 11:32, 12F
→
10/28 11:33, , 13F
10/28 11:33, 13F
→
10/28 11:33, , 14F
10/28 11:33, 14F
→
10/28 11:35, , 15F
10/28 11:35, 15F
→
10/28 11:36, , 16F
10/28 11:36, 16F