楼主: agastad
4851 19

[原创博文] 请问怎么合并500个数据集到一个数据里面 [推广有奖]

  • 1关注
  • 0粉丝

本科生

65%

还不是VIP/贵宾

-

威望
0
论坛币
68623 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
338 点
帖子
29
精华
0
在线时间
164 小时
注册时间
2007-11-29
最后登录
2021-11-15

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我在sas里面有500个数据集, 为mydata1,mydata2,mydata3......mydata500,变量和格式都是一样的;
请问怎么把他们合并到一个数据里面?  
我用下面的代码无法合并,请问大家是什么问题呀?

%macro names(name,number);                                                                                                              
%do i=1 %to &number;                                                                                                                    
&name&i;                                                                                                                                
%end;                                                                                                                                   
%mend names;                                                                                                                           
                                                                                                                                       
data all;                                                                                                                              
set %names(mydata,500);                                                                                                                  
run;
                                                                                                                              
     
二维码

扫码加我 拉你入群

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

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

关键词:数据集 Number Names Macro Data number names

回帖推荐

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

如果每一个表的变量都一样的话,你直接 data all; set mydata1-mydata500; run;

xiaosanmao 发表于8楼  查看完整内容

版主总是在问题出现后5分钟内出现,速度令人叹为观止 %macro output; data all; set %do i=1 %to 500; mydata&i %end; ; run; %mend; %output;

本帖被以下文库推荐

沙发
crackman 发表于 2010-4-25 17:39:43 |只看作者 |坛友微信交流群
如果每一个表的变量都一样的话,你直接
data all;
set mydata1-mydata500;
run;
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

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

使用道具

藤椅
anzhiliang 发表于 2010-4-25 17:43:15 |只看作者 |坛友微信交流群
好像在set 时不能用"-" 来连接,

使用道具

板凳
agastad 发表于 2010-4-25 17:54:38 |只看作者 |坛友微信交流群
恩 set是不行用 -的

使用道具

报纸
crackman 发表于 2010-4-25 18:01:32 |只看作者 |坛友微信交流群
542  data all;
543  set d1-d6;
544  run;

NOTE: 有 1000 个从数据集 WORK.D1 读取的观测。
NOTE: 有 1000 个从数据集 WORK.D2 读取的观测。
NOTE: 有 1000 个从数据集 WORK.D3 读取的观测。
NOTE: 有 1000 个从数据集 WORK.D4 读取的观测。
NOTE: 有 1000 个从数据集 WORK.D5 读取的观测。
NOTE: 有 1000 个从数据集 WORK.D6 读取的观测。
NOTE: 数据集 WORK.ALL 有 6000 个观测和 5 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):
      实际时间          0.03 秒
      CPU 时间          0.03 秒

使用道具

地板
crackman 发表于 2010-4-25 18:01:57 |只看作者 |坛友微信交流群
我测试过了
可以啊

使用道具

7
agastad 发表于 2010-4-25 18:04:47 |只看作者 |坛友微信交流群
这个是我的结果, 我用的9.2sas, 请问你用的是什么版本呀?
data all;
65   set mydata1-mydata10;
                -
                22
                 --------
                 202
ERROR 22-322: 语法错误,期望下列之一: 名称, 带引号的字符串, (, ;, END, KEY, KEYS, NOBS, OPEN, POINT, _DATA_, _LAST_, _NULL_.

ERROR 202-322: 该选项或参数不可识别,将被忽略。

66   run;

使用道具

8
xiaosanmao 发表于 2010-4-25 18:14:47 |只看作者 |坛友微信交流群
版主总是在问题出现后5分钟内出现,速度令人叹为观止

%macro output;
data all;
     set %do i=1 %to 500;
        mydata&i
        %end;
        ;
run;
%mend;
%output;
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

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

使用道具

9
agastad 发表于 2010-4-25 18:24:08 |只看作者 |坛友微信交流群
谢谢xiaosanmao和crackman的热心帮助, 非常感谢

使用道具

10
crackman 发表于 2010-4-25 19:21:00 |只看作者 |坛友微信交流群
我的是9.2的
中英文版本都测试没得问题的

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 15:59