Re: [問題] 有關SAS..

看板Statistics作者 (希望)時間19年前 (2006/11/10 10:10), 編輯推噓2(200)
留言2則, 2人參與, 最新討論串4/4 (看更多)
※ 引述《jupit (lbd)》之銘言: : ※ 引述《alias (希望)》之銘言: : : PROC SORT DATA=work.bb; BY port_code; RUN; : : DATA cc; SET work.bb; BY port_code; : : IF FIRST.port_code THEN n=0; : : n+1; : : IF LAST.port_code & n=1 THEN OUTPUT; RUN; : : 就試試看吧, 以上 : 如果是我會這麼寫 : proc sort nodupkey data=work.bb; : by port_code;run; : data aa; : set work.bb; : if last.port_code=1; : run; : 我通常都是在id非唯一時..如果資料重複(所有欄位都相同情況下)取最後一個id : or 同id而其他欄位並非全相同,則去排priority(看以何欄位為優先, by ....) : 一樣取最後唯一的id 你的方法是當資料有重複的時候,只保留一個無重複的即可 即 若資料為 a b b c c c d d e e f f g 你的作法得到 a b c d e f g 的結果, 也就是去掉重複的部份 而我的作法會得到的是 a g , 也就是只要有重複, 我就都不要了 (程式中 last.port_code=1 時的n值代表 此種port_code的個數 若個數=1, 當然就代表此種port_code並無重複, 是為單一個的) 所以這兩種作法所會得到的結果是不同的 而我個人認為原PO需要的是 "只要有重複, 就不要" 因而提供一點拙見, 也歡迎指教. 祝 愉快 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.76.175.139

11/10 10:23, , 1F
^^..了解~~我想錯了..sorry~
11/10 10:23, 1F

11/10 11:43, , 2F
不用sorry啦...了解異同在哪兒就好啦...^^
11/10 11:43, 2F
文章代碼(AID): #15Kz-lbG (Statistics)
討論串 (同標題文章)
文章代碼(AID): #15Kz-lbG (Statistics)