Re: [程式] sas MARCO問題
※ 引述《c21221203 (kkii)》之銘言:
: -------------------------------------------------------------------
: [軟體程式類別]:
: sas
: [程式問題]:
: 資料處理
: [軟體熟悉度]:
: 低(1~3個月)
: [問題敘述]:
: 不好意思,又來麻煩各位
: 小弟我資料集bbb2裡面有一個為的YEAR的變數,
: 我想要把資料分年取出,
: 但不想要一年一年重打code一次,
: 所以研究了一下marco,
: 但有錯誤起各位高手幫忙解謎。
: [程式範例]:
: 這是一般我只取2006年的時候:
: data cutyear;
: set bbb2;
: if year=2006 then output;
: run;
%macro cut_year(startyear);
data cutyear&startyear;
set bbb2;
if year=&startyear then output;
run;
%mend;
%cut_year(XXXX)
這樣就行了
: 但我換成marco後就不能跑
: %macro CUT_YEAR(STARTYEAR);
: DATA CUTYEAR;
: SET BBB2;
: %IF STARTYEAR=%year %THEN %OUTPUT;
: %MEND
: %MACRO CUT_YEAR(2007);
: 請問我在marco裡面的data是我修改我的STARTYEAR以後,每次跑出來的資料,都會在這
: 資料庫裡嗎? 我的OUTPUT都無法變成藍色字體。
: 這是我的log錯誤的地方。
: WARNING: Extraneous information on %MEND statement ignored for macro
: definition CUT_YEAR.
: 改成五樓大大的方是以後,沒有出錯了但是沒東西
: %macro CUT_YEAR(STARTYEAR);
: DATA CUTYEAR2007;
: SET BBB2;
: IF YEAR=&STARTYEAR THEN OUTPUT;
: %MEND
: % CUT_YEAR(2007);
: THEN OUTPUT 是黑色字這是正常嗎?
macro語法裡只有對macro來講是關鍵字的才會變藍色
像是 %if %then %do %end %sysfunc這一類的
其他一般在data step或是procedure理的關鍵字是不會變色的
: 沒有檔案跑出來說QQ
: -----------------------------------------------------------------------------
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.243.0.65
→
05/02 00:29, , 1F
05/02 00:29, 1F
→
05/02 00:29, , 2F
05/02 00:29, 2F
推
05/02 01:30, , 3F
05/02 01:30, 3F
討論串 (同標題文章)