Re: [程式] SAS如何挑選特定資料
之前看過tew大的一篇文章,想到可以這樣做,以下提供我的作法
如有更精簡效率的語法歡迎討論:)
data a;
input ID DATE EST;
cards;
0001 20071220 1.1
0001 20071115 1.2
0001 20071018 1.0
0001 20070918 1.3
0002 20071220 2.9
0002 20071220 2.6
0002 20071115 2.8
0002 20070911 2.5
;
run;
data b;
set a;
retain n 0;
n=n+1;
if ID^=lag(ID) then n=1;
*if n<4 then output;
run;
※ 引述《ttcur (氣質婷)》之銘言:
: 大家好,我是SAS的新手,目前正使用SAS作資料處理
: 然而在挑選資料上有問題不知從何解決
: 懇請版上的諸位高手幫忙~
: 資料如下:
: CUSIP DATE ESTIMATES
: 0001 20071220 1.1
: 0001 20071115 1.2
: 0001 20071018 1.0
: 0001 20070918 1.3
: . . .
: . . .
: . . .
: 0002 20071220 2.9
: 0002 20071220 2.6
: 0002 20071115 2.8
: 0002 20070911 2.5
: . . .
: . . .
: . . .
: 我想挑選每一個CUSIP的前三個日期的資料,因此資料的型態會變成如下:
: CUSIP DATE ESTIMATES
: 0001 20071220 1.1
: 0001 20071115 1.2
: 0001 20071018 1.0
: 0002 20071220 2.9
: 0002 20071220 2.6
: 0002 20071115 2.8
: . . .
: . . .
: . . .
: 我有試過用firstobs= obs= 來做
: 可是無法解決
: 不知道是否還要加甚麼條件或是版上的高手有其他的code可以使用呢?
: 感激不盡~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 219.86.133.37
推
02/24 21:27, , 1F
02/24 21:27, 1F
討論串 (同標題文章)