楼主: shichenliu
2985 1

data步内如何引用宏变量指示列名?(程序修改) [推广有奖]

  • 0关注
  • 0粉丝

学前班

80%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
160 点
帖子
1
精华
0
在线时间
4 小时
注册时间
2008-7-31
最后登录
2014-5-6

楼主
shichenliu 发表于 2010-1-18 11:32:43 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
%macro substractcol;
    proc sql noprint;

    select count(distinct id) into :cnt from mydata;

quit;

%let cnt=%eval(&cnt);

proc sql noprint;

    select  distinct id into :id_1-:id_&cnt. from mydata;
        quit;
    data myfinal;

    set mydatal;

keep &id_1-&&id_&n.;  /*该行需要怎么写,想要保存宏变量保存的列名*/

run;  
%mend substractcol;
%substractcol;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:data步 Data Distinct proc sql SUBSTR 程序 变量 Data 指示 列名

回帖推荐

jingju11 发表于2楼  查看完整内容

1# shichenliu

本帖被以下文库推荐

自由

沙发
jingju11 发表于 2010-1-18 22:25:47
1# shichenliu

  1. data mydata;
  2. id = 'a'; output;
  3. id = 'b'; output;
  4. run;
  5. data mydataL;
  6. _name_ = 'id'; a =1; b=2;
  7. output;
  8. run;
  9. %macro substractcol;
  10. proc sql noprint;
  11. select count(distinct id) into :cnt from mydata;
  12. %let cnt=&cnt;
  13.    select  distinct id into :id_1-:id_&cnt. from mydata;
  14. quit;
  15. data myfinal;
  16. set mydatal;
  17. keep %do i =1 %to &cnt; &&id_&i %end;;
  18. run;  
  19. %mend substractcol;
  20. %substractcol
复制代码
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 21:50