• http://www.1617788.com
  • 楼主: liuliuqiu
    180 1

    [有偿编程] SAS如何实现数据拆分 [推广有奖]

    • 6关注
    • 1粉丝

    副教授

    6%

    还不是VIP/贵宾

    -

    威望
    0
    论坛币
    58 个
    学术水平
    3 点
    热心指数
    5 点
    信用等级
    5 点
    经验
    14104 点
    帖子
    391
    精华
    0
    在线时间
    720 小时
    注册时间
    2009-3-24
    最后登录
    2018-1-22

    楼主
    liuliuqiu 发表于 2018-1-14 22:14:12 |只看作者 |倒序
    5论坛币
    求助利用SAS软件将一个excel表拆分成多个。
    有一个excel表含有N个人的信息,现在想把每个人的信息单独形成一个新的excel表,请问该如何实现,谢谢!
    例如:
    id      age    work    .....
    1       ..       ...
    2      ..        ...
    ...
    1000  ..      ...
    ...
    N       ..     ....
    根据id拆分成N个单独的表
    sheet1
    id      age    work    .....
    1       ..       ...
    sheet2
    id      age    work    .....
    2       ..       ...
    ...
    sheetN
    id      age    work    .....
    N       ..       ...

    支持楼主:购买VIP购买贵宾 购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
     
    载入中......
    stata SPSS
    沙发
    流水不朽 发表于 2018-1-15 09:37:58 |只看作者
    /*用于专门导出excel的宏*/
    %macro exp(id,out_name,n);
    data        tmp;
            set &in_data.;
      where id='&id.';   /*id是字符串类型*/
      where id=%sysevalf(&id.);/*id是数值类型*/
    run;
    /*按你的意思是每个客户信息生成单独的excel,但是后面的
    sheet名字又不一样,所以,两种都帮你处理好了
    1、如果是新的excel,则xls.sheet&n.改为xls.sheet
    2、如果是单独的excel,不同的sheet,则&out_name._&n..xlsx 改为&out_name..xlsx
    */
            libname xls excel "C:\excel\&out_name._&n..xlsx";
                    data        xls.sheet&n.(dblabel=yes);
                            set tmp;
                    run;
            libname xls;
    %mend exp;
    /*处理excel导入*/
    proc import datafile=""
                     out=out_d
                    dbms=excel replace;
                    getnames=yes;
                    sheet='';
    run;

    /*对导入的数据集 out_d ,按照客户号,或者id进行拆分*/
    /*把单独的id号/客户号拿出来*/
    proc sort data=out_d out=out_d_01 nodupkey;by id;run;

    /*进行循环生成excel*/
    data        _null_;
            set out_d_01;
       call execute('%exp('||id||','||"out_names"||','||_n_||')');
    run;
    您需要登录后才可以回帖 登录 | 我要注册

    GMT+8, 2018-1-23 02:00
    衡山县论坛 达拉特旗论坛 定远县论坛 甘德县论坛 宿城区论坛
    昌乐县论坛 良庆镇论坛 沈丘县论坛 南郊区论坛 仙公山论坛