Re: [程式] 用SAS處理120萬筆資料取眾數

看板Statistics作者 (..)時間14年前 (2011/04/24 17:25), 編輯推噓7(705)
留言12則, 6人參與, 最新討論串2/2 (看更多)
假設一下有多個id data hosp;input id $ hosp_id $; cards; 1 A 1 A 1 A 1 B 1 B 1 A 1 B 1 A 1 B 1 A 2 A 2 C 2 C 2 A 2 C 2 B 2 A 2 C 3 G 3 G 3 A 3 B ; 所以id=1 到醫院A有6次最多 id=2 到醫院C 4次最多 id=3 到醫院G 2次最多 proc sql; create table out as select a.*,b.max_count,b.hosp_id as most_hosp_id from hosp a left join (select * from (select *,count(*) as max_count from hosp group by id,hosp_id) group by id having max_count=max(max_count)) b on a.id=b.id; quit; out就是最後要的data 參考看看 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.169.230.34

04/24 20:17, , 1F
太感謝了!!!
04/24 20:17, 1F

04/24 20:18, , 2F
可是剛剛跑出來 會遇到一個問題 像是3這個人 G跟A平手
04/24 20:18, 2F

04/24 20:19, , 3F
本來的五筆資料就會變成十筆,然後五個是A五個是G
04/24 20:19, 3F

04/24 20:19, , 4F
請問該怎麼辦比較好呢?
04/24 20:19, 4F

04/24 22:10, , 5F
要看你碰到平手時想要怎麼列?
04/24 22:10, 5F

04/24 22:35, , 6F
太神了
04/24 22:35, 6F

04/24 22:47, , 7F
我有想到 但是要看你平手時的規則是什麼 再去改
04/24 22:47, 7F

04/24 22:56, , 8F
請問先生如何精進SAS程度,學生尚在學習當中
04/24 22:56, 8F

04/24 23:58, , 9F
我不是很會寫,可是天天寫一定可以進步.
04/24 23:58, 9F

04/25 08:21, , 10F
加上隨機抽樣語法 抽取平手的資料 或者 醫院有甚麼分數
04/25 08:21, 10F

04/25 08:21, , 11F
平手時 你就要挑那間醫院
04/25 08:21, 11F

04/26 00:06, , 12F
感謝大家熱情的幫忙!後來我用i大的語法+隨機抽樣解決了!
04/26 00:06, 12F
文章代碼(AID): #1Di-oDut (Statistics)
文章代碼(AID): #1Di-oDut (Statistics)