-2

我正在开发一个项目,我需要为自定义 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。

谢谢您的帮助!

4

1 回答 1

1

只需对原始数据集应用组编号,前提是该表已按 ord 排序。

data table1;
   set table1;
   by ord;
   ord2_ + 1;
   if first.ord then ord2_ = 1;
   drop ord2;
   rename ord2_=ord2;
Run;
于 2014-12-04T06:08:35.447 回答