2014-12-04 49 views
-2

我工作的一个项目,我需要指定对象的自定义SAS报告中的数据的顺序。我遇到的问题应该很容易,下面是我正在使用的数据的一个例子。指定订单SAS报告

obs ord ord2 name 
    1  3  1 A 
    2  3  . B 
    3  3  . C 
    4  3  . D 
    5  4  1 E 
    6  4  . F 
    7  5  1 G 
    8  5  . H 
    9  5  . I 
10  5  . J 

我想是...

obs ord ord2 name 
     1  3  1 A 
     2  3  2 B 
     3  3  3 C 
     4  3  4 D 
     5  4  1 E 
     6  4  2 F 
     7  5  1 G 
     8  5  2 H 
     9  5  3 I 
    10  5  4 J 

所以,对于ORD,ord2 = 1,...,n_i个的每一次出现。

感谢您的帮助!

+0

如何对原始数据执行此步骤?使用数据步骤操作相对比较容易。 – 2014-12-04 05:08:29

+0

@RobbieLiu这可能是更加困难的,不幸的是我需要制作一个表格,看起来像这样... http://www.stat.wmich.edu/wang/680/docs/aetest.lst – k6adams 2014-12-04 05:29:15

+0

如果原始数据设置看起来像你在这里显示的,订单号可以使用数据步添加。然后你可以使用'proc report'来定制报告。是对的吗?这里 – 2014-12-04 05:40:59

回答

1

就申请一组编号为原始数据集,前提是该表已被ORD排序。

data table1; 
    set table1; 
    by ord; 
    ord2_ + 1; 
    if first.ord then ord2_ = 1; 
    drop ord2; 
    rename ord2_=ord2; 
Run; 
+0

感谢您的建议,但它似乎没有工作。 这里是代码,https://drive.google.com/file/d/0B-A7YPjHrXqNSHJUQUhqNzdDQmc/view?usp=sharing这里是它生成的... https://drive.google.com/file/d/0B-A7YPjHrXqNN3ZBcjFpd3FnaXc/view?usp = sharing – k6adams 2014-12-04 06:20:40

+0

@ k6adams我忘记了你的表已经有'ord2'。所以只需创建一个新的串口然后重命名。 – 2014-12-04 06:33:23

+0

谢谢!你的建议奏效了。 – k6adams 2014-12-04 06:35:49