Re: [問題] SAS分組找出同一欄位中的不同值

看板Statistics作者 (神)時間16年前 (2009/05/04 02:41), 編輯推噓3(302)
留言5則, 3人參與, 最新討論串2/2 (看更多)
: 資料形態 : 案號 物品編號 所在縣市 : A1 1 台北市 : A1 2 台北市 : A1 3 台北市 : A1 4 高雄市 : A2 .... : A2 .... : 請問各位先進 : 我的資料中正常情況是 : 若是同一案號下 所在縣市應該都要是相同的 : 但若出現上述A1-4的情況 也就是要找出所在縣市跟同案號其他筆不同的異常點 : 煩請有經驗的先進給與建議 謝謝!! 請參考以下: ------------------------------------------------------------------------------ Data A; INFILE CARDS FIRSTOBS=2; INPUT Case $ Number Address $; CARDS; 案號 物品編號 所在縣市 A1 1 台北市 A1 2 台北市 A1 3 台北市 A1 4 高雄市 A2 1 高雄市 A2 2 高雄市 A2 3 高雄市 A2 4 台北市 ; PROC PRINT NOOBS DATA=A; Data B; SET A; BY Case; IF Address='台北市' THEN X='A1'; IF Address^='台北市' THEN X='A2'; IF Case=X; PROC PRINT NOOBS DATA=B (DROP=X); RUN; ------------------------------------------------------------------------------ 也可依相對應的案號及所在縣市來寫判斷句,IF Address='高雄市' THEN X='A2'; 最後只 PRINT 出想要的資料即可。 希望對你有所幫助!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.229.112.115

05/04 11:47, , 1F
不知道 proc rank 能不能對文字編組 可以試試看
05/04 11:47, 1F

05/04 18:46, , 2F
proc sort data=a nodupkey out=aa; by case address; run;
05/04 18:46, 2F

05/04 18:50, , 3F
觀察aa 這個資料集 案號若出現兩次以上就是異常點
05/04 18:50, 3F

05/06 00:14, , 4F
感謝各位,後來我是用兩次proc sort解決問題
05/06 00:14, 4F

05/06 00:16, , 5F
就是在q大的方法後,再一次proc sort by CASE然後找n>1的CASE
05/06 00:16, 5F
文章代碼(AID): #19_ULGPH (Statistics)
文章代碼(AID): #19_ULGPH (Statistics)