全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2043 7
2013-03-14
data y;
     input dis $   num;
     cards;
     哮喘 20
     肺心病 28
     痢疾   12
     ;

请问高手,num是频数,我怎么把数据转换成:
哮喘有20行,肺心病有28行,痢疾有12行这样的数据格式?
也就是怎么把变量按频数复制行信息
二维码

扫码加我 拉你入群

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

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

全部回复
2013-3-14 10:47:49
是不是 这样
data y;
  retain dis;
input dis $   num ;
    do i = 1 to num;
            output;
        end;
        drop i;
cards;
         A 20
         B 28
         C 12
;
run;
二维码

扫码加我 拉你入群

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

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

2013-3-14 10:51:14
不一定非要retain的,下面这个应该可以解决你的问题
data y;
input dis $   num;
cards;
a 20
b 28
c 12
;
run;

data final(drop=i);
        set y;
        i=1;
        output;

        do i= 2 to num;
    output;
        end;
run;
二维码

扫码加我 拉你入群

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

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

2013-3-14 11:26:25
yongyitian 发表于 2013-3-14 10:47
是不是 这样
data y;
  retain dis;
非常感谢!正是我需要的
二维码

扫码加我 拉你入群

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

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

2013-3-14 11:27:27
Eternal0601 发表于 2013-3-14 10:51
不一定非要retain的,下面这个应该可以解决你的问题
data y;
input dis $   num;
同样非常感谢,先收着了呵呵
二维码

扫码加我 拉你入群

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

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

2013-4-16 11:26:01
yongyitian 发表于 2013-3-14 10:47
是不是 这样
data y;
  retain dis;
弱弱地问一下,如果想把哮喘的20行数据、肺心病的28数据以及痢疾的12行数据分别提取出来,放在1diseases、2diseases和3diseases三个数据集中,用RETAIN怎么实现呢?
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群