我想知道在 SAS STAT procs 中使用 class 或 by 语句之间是否有任何重大区别。以 proc 方式为例。假设我们有 2 个组/分类变量,x1 和 x2。我想为 x1 和 x2 的每个级别组合计算变量 (x3) 的汇总统计信息。
例如,使用class x1 x2
给我在 x1=1 时 x2=1 时 x3 的汇总统计数据,然后在 x1=1 时 x2=2 时 x3 的汇总统计数据,依此类推。下面是示例输出。
x1=1 x2=1 x3 mean std
x2=2 x3 mean std
x1=2 x2=1 x3 mean std
...
如果我使用by x1 x2
我得到
x1=1 x2=1
x3 mean std
(new page)
x1=1 x2=2
x3 mean std
(new page)
....
如果我使用class x1
并且by x2
我得到
x1=1
x2=1 x3 mean std
x2=2 x3 mean std
x1=2
x2=1 x3 mean std
x2=2 x3 mean std
......
这是一些示例数据
x1 x2 x3
1 1 3
1 1 4
1 2 6
1 2 2
2 1 5
2 1 1
2 2 2
2 2 6
3 1 10
3 1 2
3 2 1
3 2 8
我能说的最好的是,除了显示方式之外,输出没有区别。我的示例可能过于简单,无法显示任何差异。