SAS Help: У меня есть следующая таблица: я хочу, чтобы последнее значение в столбце impdate заполнило столбец dataIwant для id1.id2 просто показывает, что id1 может быть связан с несколькими id2, создавая несколько строк.
Я попытался отсортировать данные по id1, дате, а затем с помощью оператора сохранения, который не работал.
data want;
date have;
by id1 date;
retain dataiwant;
if impdate then do;
dataiwant = impdate;
end;
else do;
if missing(impdate) then do;
impdate = dataiwant;
end;date id1 id2 impdate
Данные, которые у меня есть:
date id1 id2 impdate
31Dec2018 1 7A 31Aug2017
31Dec2018 1 8A 31Aug2017
31Dec2018 1 9A 31Aug2017
31Jan2019 1 7A 31Aug2017
31Jan2019 1 8A 31Aug2017
31Jan2019 1 9A 31Aug2017
28Feb2019 1 7A 1Mar2019
28Feb2019 1 8A 1Mar2019
28Feb2019 1 9A 1Mar2019
31Dec2018 2 81A 9Sep2018
31Dec2018 2 82B 9Sep2018
31Jan2019 2 81A 9Sep2018
31Jan2019 2 82B 9Sep2018
28Feb2019 2 81A 1Feb2019
28Feb2019 2 82B 1Feb2019
31Jan2019 3 66A .
31Jan2019 3 66B .
28Feb2019 3 66A .
28Feb2019 3 66B .
Данные, которые я хочу:
date id1 id2 impdate DataIwant
31Dec2018 1 7A 31Aug2017 1Mar2019
31Dec2018 1 8A 31Aug2017 1Mar2019
31Dec2018 1 9A 31Aug2017 1Mar2019
31Jan2019 1 7A 31Aug2017 1Mar2019
31Jan2019 1 8A 31Aug2017 1Mar2019
31Jan2019 1 9A 31Aug2017 1Mar2019
28Feb2019 1 7A 1Mar2019 1Mar2019
28Feb2019 1 8A 1Mar2019 1Mar2019
28Feb2019 1 9A 1Mar2019 1Mar2019
31Dec2018 2 81A 9Sep2018 1Feb2019
31Dec2018 2 82B 9Sep2018 1Feb2019
31Jan2019 2 81A 9Sep2018 1Feb2019
31Jan2019 2 82B 9Sep2018 1Feb2019
28Feb2019 2 81A 1Feb2019 1Feb2019
28Feb2019 2 82B 1Feb2019 1Feb2019
31Jan2019 3 66A . .
31Jan2019 3 66B . .
28Feb2019 3 66A . .
28Feb2019 3 66B . .