作者jasonfun44 (kk123)
看板Statistics
标题Re: [问题] SAS proc sql和macro vasriable的问题
时间Tue Dec 27 21:39:29 2016
※ 引述《terdak (努力考上研究所)》之铭言:
: 请问一下目前有一个数列
: %let EnglishName= John Marry Tom;
: ================
: 现在使用proc sql程式巨集配合正规表示法筛选如下
: %macro data1(name,year, name_list);
: proc sql;
: create table OP&name.&year. as
: select *, &year. as year
: from datasource.&name.&year.
: where prxmatch ("!(&&&name_list.)!i", BrandName)>0;
: quit;
: %mend;
: %data1(IDlist,2015,EnglishName);
: 但我无法把EnglishName这个数列,依序取出John Marry Tom丢到下面的macro
: 想到的方式是do loop
: 但实在写不出来 想请高手帮忙
试试
%MACRO datal(name,year,name_list,identity);
proc sql;
create table OP&name.&year. as select * ,&year. as year
from datasource.&name.&year.
where &name.=&identity.;
quit;
%mend;
%datal(IDlist,2015,EnglishName,John);
%datal(IDlist,2015,EnglishName,Marry);
%datal(IDlist,2015,EnglishName,Tom);
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.243.107.234
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Statistics/M.1482845971.A.2C0.html
1F:→ terdak: 感谢,那有办法John Merry不用自己输让他依序丢入 12/30 06:56
2F:→ jasonfun44: 那要把名字丢到阵列里试试看 12/31 22:03