proc phreg завершается из-за исключения с плавающей запятой - PullRequest
0 голосов
/ 01 марта 2019

Я выполняю процедуру proc phreg, используя параметр fast для многих переменных (2000+).Однако для некоторых переменных я получаю следующую ошибку с использованием быстрого подхода, затем я бы хотел либо перейти к следующей переменной, либо запустить ее по переменной, не используя опцию fast (что работает).

ERROR: Domain error.
WARNING: Output 'parameterestimates' was not created.  Make sure that the output object name, label,
         or path is spelled correctly.  Also, verify that the appropriate procedure options are used
         to produce the requested output object.  For example, verify that the NOPRINT option is not
         used.
ERROR: Termination due to Floating Point Exception

Я пытался вместо этого использовать макрос цикла, а не переменную by, но я не уверен, как сказать макросу продолжить, если вместо% syserr> 0 до i + 1?

Макрос цикла макроса анализа:

%macro loop(start,stop);
%do iii=&start %to &stop;
%analysis(&iii);
%end;

%mend;

%macro analysis(catnum);

data o_&catnum;
set output_&catnum;
if exposed gt 0 then exposed2=1;
if exposed eq 0 then exposed2=0;
run;


ods output parameterestimates=peexp_&catnum;
proc phreg data=o_&catnum fast;
strata yearentry origin;
class sex ;
effect aspl=spline(agefirsttx / naturalcubic knotmethod=equal(5));
effect tspl=spline(num_tx / naturalcubic knotmethod=list(1,3,5,10,20,50,100,150));
model (entry,exit)*censored(1)= exposed2 sex  aspl tspl ;

run;


proc datasets nolist;
delete o_&catnum;
run;

%mend;

О, NOERRORABEND включен!

Спасибо за любые идеи!

...