Re: [程式] SAS 將變項數值重新排列

看板Statistics作者 (咖啡王子)時間13年前 (2012/12/25 20:39), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《angiolini (angiolini)》之銘言: : [軟體程式類別]:SAS : [程式問題]:資料處理 : [軟體熟悉度]: : 中(3個月到1年) : [問題]: : 假設有一筆dataset : ID A B ID A B : 1 0 0 1 1 0 : 2 1 0 2 1 0 : 3 1 1 --> 3 0 1 : 4 0 1 (A變項 4 0 1 : 5 1 2 隨機重排) 5 1 2 : 想針對A變項的數值重新隨機的排列,但其他變項均不動, : 且A變項的0, 1 頻率也不改變,重複做100次(產生100個新datasets) : 請問SAS程式該如何寫呢? 先謝謝各位高手了 %macro random(n); %do i=1 %to &n; data a&i; set yourfile(drop=b); rank=rannor(&i); run; proc sort data=a&i out=a&i(drop=rank);by rank; run; data a&i; merge a&i yourfile(drop=a); run; %end; %mend; %random(100); -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 42.71.250.58

12/25 22:54, , 1F
成功了,超級感謝T大的幫忙^^
12/25 22:54, 1F
文章代碼(AID): #1GsPwHbW (Statistics)
文章代碼(AID): #1GsPwHbW (Statistics)