Re: [問題] SAS資料處理問題
※ 引述《YcSJM (挖喜SJM)》之銘言:
: 想請教一個SAS資料處理的問題
: 如果現在資料是這樣
: a b c
: ----------
: 2 3 0
: 5 2 .
: 3 9 .
: 8 2 .
: c 從第二個開始想要是 a的第2個 + b的第2個 + c的第1個
: c 的第三個類推下去是 a的第3個 + b的第3個 + c的第2個
: 這樣程式改怎麼寫
: 推 kenshin528:我覺得用IML或EXCEL做比較簡單 04/01 15:45
: 推 wlsherica:excel+1 04/01 17:12
: 推 tew:retain c 0; if _n_>=2 then c=a+b+c; 結束 04/01 17:31
: 推 tew:如果資料筆數是100000筆 SAS還是比較簡單一點 XD 04/01 18:32
: 推 wlsherica:請問_n_是甚麼呢??????? 04/01 21:50
感謝版主及版友的回答
因為資料有上千筆 而同樣的動作要重複好幾百次
上面的問題只是將問題簡單化而已
所以不考慮用excel做
試了版主的方法試了好幾次都沒辦法成功
後來改用iml處理
將處理的方法提供給以後有需要的版友參考看看
只是iml不是很熟
也許會有些多餘或者沒效率
data test;
input a b;
cards;
2 3
5 2
3 9
8 2
;
proc iml ;
use test;
read all var {a} into a; read all var {b} into b;
n=nrow(a);
c=j(n,1,0);
do j=2 to n;
c[j,1]=a[j,1]+b[j,1]+c[j-1,1];
end;
create test1 var{a b c};
append;
quit;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.233.52
推
04/05 22:43, , 1F
04/05 22:43, 1F
討論串 (同標題文章)