SAS中文论坛

标题: 请教一个有序组合问题 [打印本页]

作者: shiyiming    时间: 2010-7-30 10:07
标题: 请教一个有序组合问题
比如下面这个测试数据集:
data a;
input t1 $  t2 $ t3 $ t4 $ t5 $;
cards;
e d c b a
f c b a .
;
run;

需求如下:对每一条记录按照顺序取三个字母,第一条记录得到如下结果:e d c;e d b;e d a; e c b;e c a;e b a;第二条记录得到如下结果: f c b; f c a; f b a,最终输出SAS数据集如下:
e d c
e d b
e d a
e c b
e c a
e b a

f c b
f c a
f b a

如何实现? 多谢各位大侠!
作者: shiyiming    时间: 2010-7-30 21:47
标题: Re: 请教一个有序组合问题
data b;
set a;
keep x1-x3;
array temp(5) t1-t5;
do i=1 to 3;
do j=i+1 to 4;
do k=J+1 to 5;
x1=temp(i);
x2=temp(j);
x3=temp(k);
if not (missing(x1) or missing(x2) or missing(x3)) then output;
end;
end;
end;
run;
作者: shiyiming    时间: 2010-7-30 23:00
标题: Re: 请教一个有序组合问题
好。好。好。
作者: shiyiming    时间: 2010-8-2 12:44
标题: Re: 请教一个有序组合问题
多谢!
作者: shiyiming    时间: 2010-8-6 19:29
标题: Re: 请教一个有序组合问题
<!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->  <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2