楼主: dragonecho
1821 2

[有偿编程] 如何从数据表中读取需要的其他数据表名字 [推广有奖]

  • 0关注
  • 0粉丝

已卖:227份资源

大专生

51%

还不是VIP/贵宾

-

威望
0
论坛币
579 个
通用积分
0.1800
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
326 点
帖子
21
精华
0
在线时间
74 小时
注册时间
2009-4-21
最后登录
2019-2-6

楼主
dragonecho 发表于 2012-3-4 18:11:50 |AI写论文
20论坛币
因为论文需要,要同时对多个SAS数据集进行同样的操作,现有一数据集list,其中即为所需要的SAS数据集名字,如stk_000001, stk_600010(不连续),如何写程序读取这些名字并对这些数据集进行批处理?多谢各位大牛!

关键词:数据表 sas数据集 list 数据集 STK 数据 程序 如何

沙发
柳如清风 发表于 2012-3-7 13:41:19
  1. data list;
  2.   input name $20.;
  3.   cards;
  4. stk_000001
  5. stk_600010
  6. ;

  7. /*计算list中共有几条观测*/
  8. proc sql noprint;
  9.   select count(*) into: n from list;
  10. quit;

  11. %macro try(last);
  12. %do i=1 %to &last;
  13. data _null_;
  14.   set list;
  15.   if _n_=&i then do;
  16. call symput('var',trim(name));
  17. end;
  18. run;

  19. data &var._2;
  20.   set &var;
  21. /*其它程序*/
  22. run;
  23. /*其它程序*/
  24. %end;
  25. %mend;
  26. %try(&n);/*如果不用sql计算观测条数,也可以直接将宏变量last赋值为2*/
复制代码

藤椅
fisheryou 发表于 2012-4-5 21:00:31
  1. data list;
  2.   input name $20.;
  3.   cards;
  4. stk_000001
  5. stk_600010
  6. ;
  7. proc sql noprint;
  8.         select name  into : ma_name SEPARATED by " "
  9.         from list;
  10. quit;
  11. %put &ma_name;
  12. %macro try;
  13.         data ba;
  14.                 set &ma_name;
  15.         run;
  16. %mend try;
  17. %try
  18.        
复制代码
楼上同学的代码的只能实现全部数数据集一起实现,不能挑选实现,如果楼主是这个意思的话,偶将楼上同学的代码简化了一下,希望对楼主有帮助。

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

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