看板 Statistics 關於我們 聯絡資訊
proc sql; create table new1 /*新的檔案*/ as select * from old/*你的檔案*/ where country contains 'Argentina'; quit; proc sql; create table new2 /*新的檔案*/ as select * from old/*你的檔案*/ where country contains 'Australia'; quit; data a; set new1 new2; delete=1; run; proc sort data=a;by country; run; proc sort data=old;by country; run; data a; merge old a;by country; if delete=1 then delete; drop delete; run; 以上 你的變項不需要完全一樣就可以做到 管他有沒有空格 都可以刪除 第二個解法 proc sort data=yourfile;by country; run; data country; set yourfile; if country=country then delete; keep country; run; 接著輸出到EXCEL,針對你的國家,另外加一個虛擬變數 要給0或者1都可以 然後再讀進SAS 使用依照國家合併的方法 將你不要的資料刪除 不然就用第一個解法 但是要針對妳不要的公司 做很多檔案就是了 多複製幾次就可以 ※ 引述《gsuper (統計很難! 很難! 很難!)》之銘言: : ※ 引述《GoldenSpark ()》之銘言: : : 謝謝大家! : : 這位高手說的完全正確 : : 根據我今天後來去問我教授的結果 : : 以及剛剛自己的實驗 : : 發現要加' ' 或 " " 都可以 : : 然後內容的名字最好是一模一樣 : : 但是無論怎麼試還是試不出 一次刪掉多個國家的方法 : : 剛剛試了 : : IF country='Argentina Australia' THEN DELETE; : : 或 : : IF country='Argentina' 'Australia' THEN DELETE; : : 或是中間加or都不行 : : 不曉得是又漏掉什麼程式了 : : 再一次謝謝大家囉! : IF country='Argentina' THEN DELETE; : IF country='Australia' THEN DELETE; : IF country='C' THEN DELETE; : IF country='D' THEN DELETE; : IF country='E' THEN DELETE; : . : . : . : SAS不可以使用 : if : else if : else if : else : 只能一直 if : if : if : 或最多配一個else : 可是配else變成一定要把資料區分成兩個範疇 : 所以就一直if吧 : 不然就換成 switch 語法 : 不過這些都是SAS最基本的東西內..... : 建議自己多翻一下書本吧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.225.35.3 ※ 編輯: tew 來自: 125.225.35.3 (07/17 18:10) ※ 編輯: tew 來自: 125.225.35.3 (07/17 18:16)
GoldenSpark:第一個方法很酷 學起來了 謝謝 請問第二個方法的 07/17 20:43
GoldenSpark:keep country是指? 07/17 20:43
tew:跑過妳就知道了 07/17 21:05