我有一个数据集如下:
data have;
input;
ID Base Adverse Fixed$ Date RepricingFrequency
1 38 50 FIXED 2016 2
2 40 60 FLOATING 2017 3
3 20 20 FIXED 2016 2
4 ...
5
6
我正在寻找构建一个数组,使每个 ID 都有四个年份 2017-2020,随后的年份将用我拥有的一段数组代码填充
像这样
ID Vintage Base Adverse Fixed$ Date RepricingFrequency
1 2017 38 50 FIXED 2016 2
1 2018
1 2019
1 2020
一开始我只需要用空白复制数据集,
到目前为止我尝试过的代码是
data want;
set have;
do I=1 to 4;
output;
drop I;
run;
但当然,这会保持所有观察的重复。所以我尝试了一个数组。
data want;
set have;
array Base(2017:2020) Base2017-Base2020
array Vintage(2017:2020) Vintage2017-Vintage2020
但我不知道在这两种协议上从哪里开始。
问题是如何将 ID1-8 的数据集外推到 ID 为 1111-8888 的数据集,其中每个 ID 重复 4 次,并带有空格。