Работа со столбцом даты, который соответствует значениям в другом столбце в SAS - PullRequest
0 голосов
/ 19 марта 2020

Я хотел бы добавить к этому коду, чтобы значение последнего измерения в соответствии со столбцом «дата» в столбце «измерение» было разделено на самое низкое значение, записанное в столбце измерения, и результат сформировал новый колонка. Текущий рабочий код добавляет столбец, который вычитает начальные измерения из других измерений в столбце «измерение», если столбцы «субъект», «тип» и «процедура» совпадают. Заранее спасибо.

data have;
input Subject Type Date $ 5-12 Procedure $ 15-22 Measurement;
datalines;
500   Initial    15 AUG 2017      Invasive     20 
500   Initial    18 SEPT 2018     Surface      35 
500   Followup   12 SEPT 2018     Invasive     54 
428   Followup    2 JUL 2019      Outer        29 
765   Seventh     3 JUL 2018      Other        13 
500   Followup    6 NOV 2018      Surface      98 
428   Initial     23 FEB 2018     Outer        10 
765   Initial     20 AUG 2019     Other        19 
610   Third       21 AUG 2018     Invasive     66 
610 Initial       27 Mar   2018   Invasive     17 
;
data want (drop=rc _Measurement);
   if _N_ = 1 then do;
      declare hash h (dataset : "have (rename=(Measurement=_Measurement) where=(Type='Initial'))");
      h.definekey ('Subject');
      h.definedata ('_Measurement');
      h.definedone();
   end;

   set have;
   _Measurement=.;

   if Type ne 'Initial' then rc = h.find();
   NewMeasurement = ifn(Measurement=., ., sum (Measurement, -_Measurement));
run;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...