liubing408 发表于 2010-3-23 15:38 
是这样的,我想要2400个字母,每6个为一组,共400组。
形成这样的数据集合
n letter
1 D
2 A
3 F
4 C
5 X
6 Z
7 B
8 A
9 M
10 N
11 D
12 F
。。。
2399 A
2400 D
上述的n我知道怎么形成 :n=_n_这个语句就可以了。但是后面的字母是怎么出来的啊?
每个数字对应的字母都是随机从 A 、B 、 C 、D 、E 、F、 H 、 K 、L 、M、 N 、P 、R 、S、 T、 U 、V 、W、 X、 Y 、Z 这21字母中随机选一个的, 每一组,即1-6 、7-12 、13-18 。。。2395-2400 共400组 内部的字母不能重复,但是组之间可以重复,该怎么生成这个数据集啊?
希望高手们帮忙啊,急用!谢谢谢谢谢谢
You can ask for 2400 obs instead of 10 in below.
38 data _null_;
39 array x (26) $1 ('A' 'B' 'C' 'D' 'E' 'F'
40 'G' 'H' 'I' 'J' 'K' 'L'
41 'M' 'N' 'O' 'P' 'Q' 'R'
42 'S' 'T' 'U' 'V' 'W' 'X' 'Y' 'Z');
43 seed = 1234;
44 do n=1 to 10;
45 call ranperk(seed, 6, of x1-x26);
46 put @5 'n=' n ' x= ' x1-x6;
47 end;
48 run;
n=1 x= G D L F J A
n=2 x= G F M B J O
n=3 x= M X Z T L J
n=4 x= I N M C E A
n=5 x= C S M J F L
n=6 x= U F S P N V
n=7 x= I G U O S Y
n=8 x= M A D E H T
n=9 x= F J G I Q B
n=10 x= A S K D C V
NOTE: DATA statement used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds