我有一个看起来像这样的 SAS 数据集:
id | dept | ...
1 A
2 A
3 A
4 A
5 A
6 A
7 A
8 A
9 B
10 B
11 B
12 B
13 B
每个观察代表一个人。
我想将数据集拆分为“团队”数据集,每个数据集最多可以有 3 个观察值。
对于上面的示例,这意味着为部门 A 创建 3 个数据集(其中 2 个数据集将包含 3 个观察值,第三个数据集将包含 2 个观察值)。B 部门的 2 个数据集(1 个包含 3 个观测值,另一个包含 2 个观测值)。
像这样:
第一个数据集(deptA1):
id | dept | ...
1 A
2 A
3 A
第二个数据集(deptA2)
id | dept | ...
4 A
5 A
6 A
第三个数据集(deptA3)
id | dept | ...
7 A
8 A
第四个数据集(deptB1)
id | dept | ...
9 B
10 B
11 B
第五个数据集(deptB2)
id | dept | ...
12 B
13 B
我使用的完整数据集包含数千个超过 50 个部门的观察结果。我可以计算出每个部门需要多少数据集,我认为宏是最好的方法,因为所需的数据集数量是动态的。但我无法弄清楚创建数据集的逻辑,以便它们最多有 3 个观察值。任何帮助表示赞赏。