Learning SAS? Welcome to the exclusive online community for all SAS learners.

ERROR: SUBJECT= variable must be nonmissing in observation 1.

Reply
Occasional Contributor
Posts: 14

ERROR: SUBJECT= variable must be nonmissing in observation 1.

Hi there,

When I try and run my macro I get the error message

ERROR: SUBJECT= variable must be nonmissing in observation 1.

NOTE: The SAS System stopped processing this step because of errors.

I have removed any observations with missing values in my ID Column (for me suject=ID). I re-imported the data set on to SAS university (from an excel file). The file was successfully imported as a SAS file under my kenyad library.

I re-started SAS University to ensure no errors were lingering but again, when I try and re run the  data I get the same error message. There are no missing values under ID and so I am confused as to what to do now....????

Please help. Thank you!!

Here is the code used:

libname kenyaD '/folders/myfolders/';

%include "/folders/myfolders/mixtran_macro_v2.1.sas";

data kdata;

set kenyad.MIdata;

run;

ods graphics off;

Options symbolgen mlogic mprint mfile;

%MIXTRAN(data=kenyad.MIdata, response=CA, foodtype=CA, subject=ID, repeat=visitno, covars_amt=sex agey, covars_prob=,

outlib=kenyaD, modeltype=amount, lambda=, replicate_var=, seq=, weekend=, vargroup=,

numvargroups=, start_val1=, start_val2=, start_val3=, vcontrol=,

nloptions=, titles=, printlevel=,subgroup=);

Super User
Super User
Posts: 7,988

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

And what does this dataset look like:

kenyad.MIdata;


Is there missing data in row 1 of that dataset?  Its likely that the import of data from Excel hasn't work - no suprises there, I would suggest you don't use Excel as it pretty much useless at any task.  Anyways check the data as it is in the dataset used.  Not knowing what that macro does also does not help.  What does the log look like (though check the data first)?

Super User
Posts: 19,868

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

Generate some sample data you think should work in the macro and post that. Or your actual data if you can.

Occasional Contributor
Posts: 14

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

No, now there is no missing data under ID when I open the sas MIdata on SAS -before it had "." for the first 3 observations- now they are gone. Yet,  I still get the same error.

The marco is the MIXTRAN macro (from the National Cancer Institute found here http://epi.grants.cancer.gov/diet/usualintakes/mixtran_macro_v2.1.sas). It is used to estimate he distribution of usual food or nutrient intake for a population or subpopulation. I included the log below.


Unfortunately, I cannot share the actual dataset however,  attached is a sample data set that reflects a mini version of the original.

hidpnumIDvisitnosexageynpnlagesexsupplementstypenumberofmealsCA
1551222509231000
155112200923300
1662122222150
1662222223550
222312361923822
322312281923555
3444111122400
422512300923300
422522350923350
466611112320
466621112255
522712330922666
5888111113669
622912451923623
7221012371923700
8111112441923600
9111212200923800
92213111123700
101114123509231222
1022151212115
11111612221923100
112217112123600
12221812371922400
122218223419221600
132219124019231000
1366201222231000
142221124019231300
1455221222211100
15222312251923550
15222322251923800
162224125119231544
17222512441923322
181126124819211566
194427112123444
20112812301923333
20112922291922777

Here is the log:

1 OPTIONS NOSYNTAXCHECK;

2 TITLE;

3 FOOTNOTE;

4 OPTIONS LOCALE=en_US DFLANG=LOCALE;

5 DATA _NULL_;

6 RUN;

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

7 OPTIONS VALIDVARNAME=V7;

8 FILENAME _HTMLOUT TEMP;

9 FILENAME _RTFOUT TEMP ENCODING='UTF-8';

10 FILENAME _PDFOUT TEMP;

11 FILENAME _GSFNAME TEMP;

12 FILENAME _DATAOUT TEMP;

13 %LET SYSCC=0;

14 %LET _CLIENTAPP=SAS Studio;

15 %LET _CLIENTAPPVERSION=3.4;

16 %LET _SASPROGRAMFILE = %BQUOTE();

17 %LET _BASEURL = %BQUOTE(http://localhost:10080/SASStudio/);

18 %LET _EXECENV=SASStudio;

19 DATA _NULL_;

20 CALL SYMPUT("GRAPHINIT","");

21 CALL SYMPUT("GRAPHTERM","");

22 RC=TSLVL('GEOCODE','N');

23 _ERROR_=0;

24 IF (RC^=' ') THEN DO;

25 CALL SYMPUT("GRAPHINIT","GOPTIONS RESET=ALL GSFNAME=_GSFNAME;");

26 CALL SYMPUT("GRAPHTERM","GOPTIONS NOACCESSIBLE;");

27 END;

28 RUN;

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

29 DATA _NULL_;

30 RC=SYSPROD("PRODNUM002");

31 IF (RC^=1) THEN DO;

32 CALL SYMPUT("GRAPHINIT","");

33 CALL SYMPUT("GRAPHTERM","");

34 END;

35 RUN;

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

36 %LET _DATAOUT_MIME_TYPE=;

37 %LET _DATAOUT_NAME=;

38 %LET _DATAOUT_TABLE=;

39 %LET _DATAOUT_URL=;

40 %SYMDEL _DATAOUT_MIME_TYPE _DATAOUT_NAME _DATAOUT_URL _DATAOUT_TABLE;

41 %LET _SASWS_ = %BQUOTE(/folders/myfolders);

42 %LET _SASWSTEMP_=%BQUOTE(/folders/myfolders/.images/932cabe6-a31d-4eb6-9f18-c84bfe0f6a24);

43 ODS LISTING CLOSE;

44 OPTIONS PRINTERPATH=PDF;

45 ODS AUTONAVIGATE OFF;

46 ODS GRAPHICS ON;

47 ODS HTML5 (ID=WEB) DEVICE=PNG GPATH="&_SASWSTEMP_" ENCODING=utf8 FILE=_HTMLOUT (TITLE='Results: Program 1')

47 ! STYLE=Htmlblue OPTIONS(BITMAP_MODE='INLINE' SVG_MODE='INLINE' CSS_PREFIX='.ods_932cabe6-a31d-4eb6-9f18-c84bfe0f6a24'

47 ! BODY_ID='div_932cabe6-a31d-4eb6-9f18-c84bfe0f6a24' );

NOTE: Writing HTML5(WEB) Body file: _HTMLOUT

48 ODS RTF (ID=WEB) STYLE=Rtf FILE=_RTFOUT;

NOTE: Writing RTF Body file: _RTFOUT

49 ODS PDF (ID=WEB) STYLE=Pearl FILE=_PDFOUT;

NOTE: Writing ODS PDF(WEB) output to DISK destination "_PDFOUT", printer "PDF".

50 &GRAPHINIT;

51 OPTIONS FIRSTOBS=1;

52 OPTIONS OBS=MAX;

53 OPTIONS DTRESET DATE NUMBER NOTES;

54 %put %bquote(NOTE: ODS statements in the SAS Studio environment may disable some output features.);

NOTE: ODS statements in the SAS Studio environment may disable some output features.

55 OPTIONS NOSYNTAXCHECK;

56

57 libname kenyaD '/folders/myfolders/';

NOTE: Libref KENYAD was successfully assigned as follows:

  Engine: V9

  Physical Name: /folders/myfolders

58

59

60

61 %include "/folders/myfolders/mixtran_macro_v2.1.sas";

2193

2194 data kdata;

2195

2196 set kenyad.MIdata;

2197

2198 run;

NOTE: There were 882 observations read from the data set KENYAD.MIDATA.

NOTE: The data set WORK.KDATA has 882 observations and 66 variables.

NOTE: DATA statement used (Total process time):

  real time 0.02 seconds

  cpu time 0.02 seconds

2199 ods graphics off;

2200

2201 Options symbolgen mlogic mprint mfile;

2202

2203 %MIXTRAN(data=kenyad.MIdata, response=CA, foodtype=CA, subject=ID, repeat=visitno, covars_amt=sex agey, covars_prob=,

MLOGIC(MIXTRAN): Beginning execution.

2204 outlib=kenyaD, modeltype=amount, lambda=, replicate_var=, seq=, weekend=, vargroup=,

2205 numvargroups=, start_val1=, start_val2=, start_val3=, vcontrol=,

2206 nloptions=, titles=, printlevel=,subgroup=);

MLOGIC(MIXTRAN): Parameter DATA has value kenyad.MIdata

MLOGIC(MIXTRAN): Parameter RESPONSE has value CA

MLOGIC(MIXTRAN): Parameter FOODTYPE has value CA

MLOGIC(MIXTRAN): Parameter SUBJECT has value ID

MLOGIC(MIXTRAN): Parameter REPEAT has value visitno

MLOGIC(MIXTRAN): Parameter COVARS_AMT has value sex agey

MLOGIC(MIXTRAN): Parameter COVARS_PROB has value

MLOGIC(MIXTRAN): Parameter OUTLIB has value kenyaD

MLOGIC(MIXTRAN): Parameter MODELTYPE has value amount

MLOGIC(MIXTRAN): Parameter LAMBDA has value

MLOGIC(MIXTRAN): Parameter REPLICATE_VAR has value

MLOGIC(MIXTRAN): Parameter SEQ has value

MLOGIC(MIXTRAN): Parameter WEEKEND has value

MLOGIC(MIXTRAN): Parameter VARGROUP has value

MLOGIC(MIXTRAN): Parameter NUMVARGROUPS has value

MLOGIC(MIXTRAN): Parameter START_VAL1 has value

MLOGIC(MIXTRAN): Parameter START_VAL2 has value

MLOGIC(MIXTRAN): Parameter START_VAL3 has value

MLOGIC(MIXTRAN): Parameter VCONTROL has value

MLOGIC(MIXTRAN): Parameter NLOPTIONS has value

MLOGIC(MIXTRAN): Parameter TITLES has value

MLOGIC(MIXTRAN): Parameter PRINTLEVEL has value

MLOGIC(MIXTRAN): Parameter SUBGROUP has value

MPRINT(MIXTRAN): ********************************************************;

WARNING: No logical assign for filename MPRINT.

NOTE: To store macro generated text in an external file, assign the filename MPRINT to a valid external file. To attempt to access

  this macro debugging feature again, reset OPTION MFILE.

MLOGIC(MIXTRAN): %LET (variable name is VAR_U1START)

MPRINT(MIXTRAN): *************************************************************************;

MPRINT(MIXTRAN): ** setup ;

MPRINT(MIXTRAN): *************************************************************************;

MLOGIC(MIXTRAN): %LET (variable name is SUCCESS)

MLOGIC(MIXTRAN): %LET (variable name is CONVFLAG)

MPRINT(MIXTRAN): ** IMS Specific ;

MLOGIC(MIXTRAN): %LET (variable name is FAILED)

MPRINT(MIXTRAN): ** END OF IMS SPECIFIC;

MLOGIC(MIXTRAN): %LET (variable name is MODELTYPE)

SYMBOLGEN: Macro variable MODELTYPE resolves to amount

MLOGIC(MIXTRAN): %LET (variable name is NUMVGMINUS1)

SYMBOLGEN: Macro variable NUMVARGROUPS resolves to

SYMBOLGEN: Macro variable NUMVARGROUPS resolves to

MLOGIC(MIXTRAN): %IF condition &numvargroups = is TRUE

MLOGIC(MIXTRAN): %LET (variable name is NUMVARGROUPS)

MLOGIC(MIXTRAN): %PUT ## in the MIXTRAN macro:

## in the MIXTRAN macro:

MLOGIC(MIXTRAN): %PUT ## the response variable is &response

SYMBOLGEN: Macro variable RESPONSE resolves to CA

## the response variable is CA

MLOGIC(MIXTRAN): %PUT ## the data set being analysed is &data

SYMBOLGEN: Macro variable DATA resolves to kenyad.MIdata

## the data set being analysed is kenyad.MIdata

SYMBOLGEN: Macro variable VCONTROL resolves to

MLOGIC(MIXTRAN): %IF condition %length(&vcontrol) >6 is FALSE

SYMBOLGEN: Macro variable VCONTROL resolves to

MLOGIC(MIXTRAN): %IF condition &vcontrol ne is FALSE

SYMBOLGEN: Macro variable VCONTROL resolves to

MLOGIC(MIXTRAN): %IF condition &vcontrol = is TRUE

SYMBOLGEN: Macro variable START_VAL1 resolves to

SYMBOLGEN: Macro variable START_VAL2 resolves to

SYMBOLGEN: Macro variable START_VAL3 resolves to

MLOGIC(MIXTRAN): %IF condition (&start_val1 ne or &start_val2 ne or &start_val3 ne ) is FALSE

SYMBOLGEN: Macro variable START_VAL1 resolves to

MLOGIC(MIXTRAN): %IF condition &start_val1 = is TRUE

MLOGIC(MIXTRAN): %LET (variable name is START_VAL1)

SYMBOLGEN: Macro variable START_VAL2 resolves to

MLOGIC(MIXTRAN): %IF condition &start_val2 = is TRUE

MLOGIC(MIXTRAN): %LET (variable name is START_VAL2)

SYMBOLGEN: Macro variable START_VAL3 resolves to

MLOGIC(MIXTRAN): %IF condition &start_val3= is TRUE

MLOGIC(MIXTRAN): %LET (variable name is START_VAL3)

MLOGIC(MIXTRAN): %LET (variable name is PRINT_ON)

MLOGIC(MIXTRAN): %LET (variable name is PRINT_OFF)

SYMBOLGEN: Macro variable PRINTLEVEL resolves to

MLOGIC(MIXTRAN): %IF condition &printlevel=2 is FALSE

SYMBOLGEN: Macro variable PRINTLEVEL resolves to

MLOGIC(MIXTRAN): %IF condition &printlevel=3 is FALSE

SYMBOLGEN: Macro variable PRINT_OFF resolves to ods exclude all ;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MPRINT(MIXTRAN): ods exclude all ;

MPRINT(MIXTRAN): ;

MPRINT(MIXTRAN): ** ods exclude all;

SYMBOLGEN: Macro variable REPLICATE_VAR resolves to

MLOGIC(MIXTRAN): %IF condition &replicate_var = is TRUE

MLOGIC(MIXTRAN): %LET (variable name is FREQING)

MLOGIC(MIXTRAN): %LET (variable name is REPLICATE)

MLOGIC(MIXTRAN): %LET (variable name is REPLICATE_VAR)

SYMBOLGEN: Macro variable TITLES resolves to

MLOGIC(MIXTRAN): %IF condition &titles = is TRUE

MLOGIC(MIXTRAN): %LET (variable name is TITLES)

MLOGIC(MIXTRAN): %PUT ## number of titles reserved is &titles

SYMBOLGEN: Macro variable TITLES resolves to 0

## number of titles reserved is 0

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype= is FALSE

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype eq NOCORR is FALSE

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype eq AMOUNT is TRUE

MLOGIC(MIXTRAN): %PUT ## Code for amount-only model will be executed

## Code for amount-only model will be executed

SYMBOLGEN: Macro variable LAMBDA resolves to

MLOGIC(MIXTRAN): %IF condition &lambda eq is TRUE

MLOGIC(MIXTRAN): %LET (variable name is LAMBDABOUNDS)

MLOGIC(MIXTRAN): %PUT ## lambdabounds is: &lambdabounds

SYMBOLGEN: Macro variable LAMBDABOUNDS resolves to bounds A_LAMBDA>0.01;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

## lambdabounds is: bounds A_LAMBDA>0.01;

SYMBOLGEN: Macro variable SUBGROUP resolves to

MLOGIC(MIXTRAN): %IF condition &subgroup ne is FALSE

SYMBOLGEN: Macro variable NLOPTIONS resolves to

MLOGIC(MIXTRAN): %IF condition &nloptions ne is FALSE

MPRINT(MIXTRAN): ***** Probability covars *******;

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype ne AMOUNT is FALSE

MPRINT(MIXTRAN): ******** Amount covars *********;

MLOGIC(MIXTRAN): %LET (variable name is VARS_AMT)

SYMBOLGEN: Macro variable COVARS_AMT resolves to sex agey

SYMBOLGEN: Macro variable WEEKEND resolves to

SYMBOLGEN: Macro variable SEQ resolves to

MLOGIC(MIXTRAN): %PUT ## The Amount Covariates Are:

## The Amount Covariates Are:

MLOGIC(MIXTRAN): %LET (variable name is I)

MLOGIC(MIXTRAN): %DO %UNTIL(%qscan(&vars_amt,&I, )=) loop beginning.

SYMBOLGEN: Macro variable I resolves to 1

MLOGIC(MIXTRAN): %LET (variable name is VARL1)

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

SYMBOLGEN: Macro variable I resolves to 1

MLOGIC(MIXTRAN): %PUT ## &&varl&i

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable I resolves to 1

SYMBOLGEN: Macro variable VARL1 resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

## SEX

MLOGIC(MIXTRAN): %LET (variable name is I)

SYMBOLGEN: Macro variable I resolves to 1

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

SYMBOLGEN: Macro variable I resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL(%qscan(&vars_amt,&I, )=) condition is FALSE; loop will iterate again.

SYMBOLGEN: Macro variable I resolves to 2

MLOGIC(MIXTRAN): %LET (variable name is VARL2)

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

SYMBOLGEN: Macro variable I resolves to 2

MLOGIC(MIXTRAN): %PUT ## &&varl&i

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable I resolves to 2

SYMBOLGEN: Macro variable VARL2 resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

## AGEY

MLOGIC(MIXTRAN): %LET (variable name is I)

SYMBOLGEN: Macro variable I resolves to 2

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

SYMBOLGEN: Macro variable I resolves to 3

MLOGIC(MIXTRAN): %DO %UNTIL() condition is TRUE; loop will not iterate again.

MLOGIC(MIXTRAN): %LET (variable name is CNT_AMT)

SYMBOLGEN: Macro variable I resolves to 3

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

MLOGIC(MIXTRAN): %IF condition &vars_amt= is FALSE

MLOGIC(MIXTRAN): %LET (variable name is WEEKEND)

SYMBOLGEN: Macro variable WEEKEND resolves to

MLOGIC(MIXTRAN): %LET (variable name is SEQ)

SYMBOLGEN: Macro variable SEQ resolves to

SYMBOLGEN: Macro variable WEEKEND resolves to

MLOGIC(MIXTRAN): %IF condition &weekend ne is FALSE

MLOGIC(MIXTRAN): %LET (variable name is PREDXB)

MPRINT(MIXTRAN): ******************************************************************;

MPRINT(MIXTRAN): data data (drop=wtflag) ;

SYMBOLGEN: Macro variable DATA resolves to kenyad.MIdata

MPRINT(MIXTRAN): set kenyad.MIdata;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): if CA=0 then YN=0;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): else if CA>0 then YN=1;

MPRINT(MIXTRAN): *** check that the replicate variable, if supplied, is an integer;

MPRINT(MIXTRAN): *** If none supplied, then assign the value of 1 to the dummy weight variable;

MPRINT(MIXTRAN): wtflag = '0';

MLOGIC(MIXTRAN): %LET (variable name is WTCH)

SYMBOLGEN: Macro variable REPLICATE_VAR resolves to dummywt

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %IF condition &replicate_var ne dummywt is FALSE

MPRINT(MIXTRAN): dummywt=1;

MPRINT(MIXTRAN): run;

NOTE: There were 882 observations read from the data set KENYAD.MIDATA.

NOTE: The data set WORK.DATA has 882 observations and 68 variables.

NOTE: DATA statement used (Total process time):

  real time 0.01 seconds

  cpu time 0.01 seconds

SYMBOLGEN: Macro variable WTCH resolves to 0

MLOGIC(MIXTRAN): %IF condition &wtch = 1 is FALSE

MPRINT(MIXTRAN): proc sort data=data;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

SYMBOLGEN: Macro variable REPEAT resolves to visitno

MPRINT(MIXTRAN): by ID visitno;

MPRINT(MIXTRAN): run;

NOTE: There were 882 observations read from the data set WORK.DATA.

NOTE: The data set WORK.DATA has 882 observations and 68 variables.

NOTE: PROCEDURE SORT used (Total process time):

  real time 0.01 seconds

  cpu time 0.00 seconds

MPRINT(MIXTRAN): data data0;

MPRINT(MIXTRAN): set data;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

SYMBOLGEN: Macro variable REPEAT resolves to visitno

MPRINT(MIXTRAN): by ID visitno;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): if CA=0 then do;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): CA=.;

MPRINT(MIXTRAN): end;

MPRINT(MIXTRAN): run;

NOTE: There were 882 observations read from the data set WORK.DATA.

NOTE: The data set WORK.DATA0 has 882 observations and 68 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype = AMOUNT is TRUE

MPRINT(MIXTRAN): proc sql;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): UPDATE data0 Set CA=(select min(b.CA)*.5 as minFOOD from data as b where 0<CA) Where CA=. ;

NOTE: 10 rows were updated in WORK.DATA0.

MPRINT(MIXTRAN): quit;

NOTE: PROCEDURE SQL used (Total process time):

  real time 0.01 seconds

  cpu time 0.00 seconds

MLOGIC(MIXTRAN): %LET (variable name is TEMPDA)

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype = AMOUNT is TRUE

MLOGIC(MIXTRAN): %LET (variable name is TEMPDA)

MPRINT(MIXTRAN): proc freq data=data0 noprint ;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): where CA gt 0 ;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

SYMBOLGEN: Macro variable TEMPDA resolves to repeat

MPRINT(MIXTRAN): tables ID / nopercent out=repeat;

MPRINT(MIXTRAN): run;

NOTE: There were 882 observations read from the data set WORK.DATA0.

  WHERE CA>0;

NOTE: The data set WORK.REPEAT has 734 observations and 3 variables.

NOTE: PROCEDURE FREQ used (Total process time):

  real time 0.02 seconds

  cpu time 0.02 seconds

MPRINT(MIXTRAN): proc sql noprint;

SYMBOLGEN: Macro variable TEMPDA resolves to repeat

MPRINT(MIXTRAN): select distinct count(count) into :RecallCount from repeat where count > 1 ;

MPRINT(MIXTRAN): quit;

NOTE: PROCEDURE SQL used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

MLOGIC(MIXTRAN): %PUT ## the number of repeat observations = &RecallCount.

SYMBOLGEN: Macro variable RECALLCOUNT resolves to 147

## the number of repeat observations = 147

SYMBOLGEN: Macro variable RECALLCOUNT resolves to 147

MLOGIC(MIXTRAN): %IF condition %eval(&RecallCount) <2 is FALSE

SYMBOLGEN: Macro variable RECALLCOUNT resolves to 147

MLOGIC(MIXTRAN): %IF condition %eval(&RecallCount) <11 is FALSE

MPRINT(MIXTRAN): run;

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype ne AMOUNT is FALSE

MPRINT(MIXTRAN): ***************************************************************;

MPRINT(MIXTRAN): ** Find the smallest non-zero value of the response var ** over all subjects (min_amt). ** also find ** the

model type, the name of the replicate (weight) variable ** and if applicable the number of var groups. ** These will be passed to

the DISTRIB macro;

MPRINT(MIXTRAN): ****************************************************************;

MPRINT(MIXTRAN): proc univariate data = data0 noprint;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): var CA ;

MPRINT(MIXTRAN): output out=misc_info min=min_amt ;

MPRINT(MIXTRAN): run;

NOTE: The data set WORK.MISC_INFO has 1 observations and 1 variables.

NOTE: PROCEDURE UNIVARIATE used (Total process time):

  real time 0.02 seconds

  cpu time 0.01 seconds

MPRINT(MIXTRAN): data misc_info ;

MPRINT(MIXTRAN): set misc_info(keep=min_amt);

MPRINT(MIXTRAN): FreqName=symget('replicate_var');

SYMBOLGEN: Macro variable NUMVARGROUPS resolves to 0

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MPRINT(MIXTRAN): numvargrps=0;

SYMBOLGEN: Macro variable WEEKEND resolves to

MLOGIC(MIXTRAN): %IF condition &weekend eq is TRUE

MPRINT(MIXTRAN): weekendflag=0;

NOTE: There were 1 observations read from the data set WORK.MISC_INFO.

NOTE: The data set WORK.MISC_INFO has 1 observations and 4 variables.

NOTE: DATA statement used (Total process time):

  real time 0.02 seconds

  cpu time 0.00 seconds

MPRINT(MIXTRAN): proc sort data=data out=_persons nodupkey;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

MPRINT(MIXTRAN): by ID;

NOTE: There were 882 observations read from the data set WORK.DATA.

NOTE: 148 observations with duplicate key values were deleted.

NOTE: The data set WORK._PERSONS has 734 observations and 68 variables.

NOTE: PROCEDURE SORT used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

MPRINT(MIXTRAN): data _persons ;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

SYMBOLGEN: Macro variable REPLICATE_VAR resolves to dummywt

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable SUBGROUP resolves to

MPRINT(MIXTRAN): set _persons (keep=ID dummywt CA ) ;

SYMBOLGEN: Macro variable SUBJECT resolves to ID

MPRINT(MIXTRAN): by ID ;

SYMBOLGEN: Macro variable REPLICATE_VAR resolves to dummywt

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MPRINT(MIXTRAN): indwts=dummywt;

MPRINT(MIXTRAN): ****************** end of general set up **********************************;

MPRINT(MIXTRAN): ****************************************************************************;

MPRINT(MIXTRAN): ;

MPRINT(MIXTRAN): **RERUNS ;

SYMBOLGEN: Macro variable VCONTROL resolves to

MLOGIC(MIXTRAN): %IF condition &vcontrol ne is FALSE

MPRINT(MIXTRAN): *******************************************************************************;

SYMBOLGEN: Macro variable VCONTROL resolves to

SYMBOLGEN: Macro variable VCONTROL resolves to

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition (&vcontrol = ) or (&vcontrol ne and &modeltype ne CORR) is TRUE

SYMBOLGEN: Macro variable MODELTYPE resolves to AMOUNT

MLOGIC(MIXTRAN): %IF condition &modeltype ne AMOUNT is FALSE

SYMBOLGEN: Macro variable VCONTROL resolves to

MLOGIC(MIXTRAN): %IF condition &vcontrol = is TRUE

MPRINT(MIXTRAN): ************************************************************;

MPRINT(MIXTRAN): ** starting estimates for amount ;

MPRINT(MIXTRAN): ************************************************************;

SYMBOLGEN: Macro variable PRINT_OFF resolves to ods exclude all ;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MPRINT(MIXTRAN): ods exclude all ;

MPRINT(MIXTRAN): ;

MPRINT(MIXTRAN): ** ods exclude all ;

SYMBOLGEN: Macro variable TITLES resolves to 0

MPRINT(MIXTRAN): title1 "Starting Estimates for Amount Model" ;

SYMBOLGEN: Macro variable LAMBDA resolves to

MLOGIC(MIXTRAN): %IF condition &lambda eq is TRUE

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt>0 is TRUE

MPRINT(MIXTRAN): ods output boxcox=boxcox;

NOTE: There were 734 observations read from the data set WORK._PERSONS.

NOTE: The data set WORK._PERSONS has 734 observations and 4 variables.

NOTE: DATA statement used (Total process time):

  real time 0.02 seconds

  cpu time 0.02 seconds

MPRINT(MIXTRAN): proc transreg data=data0;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

MPRINT(MIXTRAN): where CA>0;

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

MPRINT(MIXTRAN): model BoxCox(CA / lambda=0.05 to 1 by 0.05) = identity(SEX AGEY);

MPRINT(MIXTRAN): run;

NOTE: 344 observations were deleted from the analysis due to missing values.

WARNING: The constant variable sex will be zeroed and excluded from the analysis.

NOTE: Algorithm converged.

NOTE: The data set WORK.BOXCOX has 20 observations and 7 variables.

NOTE: There were 882 observations read from the data set WORK.DATA0.

  WHERE CA>0;

NOTE: PROCEDURE TRANSREG used (Total process time):

  real time 0.04 seconds

  cpu time 0.02 seconds

MPRINT(MIXTRAN): data _null_;

MPRINT(MIXTRAN): set boxcox;

MPRINT(MIXTRAN): if ci='<';

MPRINT(MIXTRAN): call symput ('lambda',lambda);

MPRINT(MIXTRAN): run;

NOTE: Numeric values have been converted to character values at the places given by: (Line)Smiley SadColumn).

  2206:55

NOTE: There were 20 observations read from the data set WORK.BOXCOX.

NOTE: DATA statement used (Total process time):

  real time 0.01 seconds

  cpu time 0.01 seconds

MPRINT(MIXTRAN): data data0;

MPRINT(MIXTRAN): set data0;

SYMBOLGEN: Macro variable LAMBDA resolves to 0.35

MLOGIC(MIXTRAN): %IF condition &lambda=0 is FALSE

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable LAMBDA resolves to 0.35

SYMBOLGEN: Macro variable LAMBDA resolves to 0.35

MPRINT(MIXTRAN): boxcoxy=(CA** 0.35-1)/ 0.35;

MPRINT(MIXTRAN): run;

NOTE: There were 882 observations read from the data set WORK.DATA0.

NOTE: The data set WORK.DATA0 has 882 observations and 69 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.02 seconds

MPRINT(MIXTRAN): option nomprint;

SYMBOLGEN: Macro variable VARS_AMT resolves to SEX AGEY

SYMBOLGEN: Macro variable FREQING resolves to **unreplicated;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

NOTE: Algorithm converged.

NOTE: The scale parameter was estimated by maximum likelihood.

NOTE: The data set WORK.PARMSG2 has 4 observations and 8 variables.

NOTE: PROCEDURE GENMOD used (Total process time):

  real time 0.09 seconds

  cpu time 0.04 seconds

NOTE: The data set WORK.RANDOM2 has 1 observations and 3 variables.

NOTE: DATA statement used (Total process time):

  real time 0.01 seconds

  cpu time 0.00 seconds

MLOGIC(MIXTRAN): %PUT VU2= &vu2

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

VU2= A_VAR_U2

MLOGIC(MIXTRAN): %LET (variable name is CRD2)

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt > 0 is TRUE

MLOGIC(MIXTRAN): %LET (variable name is J)

MLOGIC(MIXTRAN): %DO %UNTIL(&j=(&cnt_amt+1)) loop beginning.

SYMBOLGEN: Macro variable J resolves to 1

MLOGIC(MIXTRAN): %IF condition %eval(&j) lt 9 is TRUE

MLOGIC(MIXTRAN): %LET (variable name is ZNUM)

MLOGIC(MIXTRAN): %LET (variable name is CRD2)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable ZNUM resolves to 0

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT

SYMBOLGEN: Macro variable ZNUM resolves to 0

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable VARL1 resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is J)

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL(&j=(&cnt_amt+1)) condition is FALSE; loop will iterate again.

SYMBOLGEN: Macro variable J resolves to 2

MLOGIC(MIXTRAN): %IF condition %eval(&j) lt 9 is TRUE

MLOGIC(MIXTRAN): %LET (variable name is ZNUM)

MLOGIC(MIXTRAN): %LET (variable name is CRD2)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable ZNUM resolves to 0

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT A02_SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable ZNUM resolves to 0

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable VARL2 resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is J)

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable J resolves to 3

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL() condition is TRUE; loop will not iterate again.

MLOGIC(MIXTRAN): %PUT crd2 is &crd2

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT A02_SEX A03_AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

crd2 is A01_INTERCEPT A02_SEX A03_AGEY

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt>0 is TRUE

MLOGIC(MIXTRAN): %LET (variable name is INT)

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT A02_SEX A03_AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable INT resolves to A01_INTERCEPT

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is J)

MLOGIC(MIXTRAN): %DO %UNTIL(&j=(&cnt_amt+1)) loop beginning.

MLOGIC(MIXTRAN): %LET (variable name is UP)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable VARL1 resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is LNGTH)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable VARL1 resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is VARNAME)

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT A02_SEX A03_AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable UP resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable VARNAME resolves to A02_SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable UP resolves to SEX

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is J)

SYMBOLGEN: Macro variable J resolves to 1

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL(&j=(&cnt_amt+1)) condition is FALSE; loop will iterate again.

MLOGIC(MIXTRAN): %LET (variable name is UP)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable VARL2 resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is LNGTH)

SYMBOLGEN: && resolves to &.

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable VARL2 resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is VARNAME)

SYMBOLGEN: Macro variable CRD2 resolves to A01_INTERCEPT A02_SEX A03_AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable UP resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable VARNAME resolves to A03_AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable UP resolves to AGEY

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %LET (variable name is J)

SYMBOLGEN: Macro variable J resolves to 2

SYMBOLGEN: Macro variable J resolves to 3

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL() condition is TRUE; loop will not iterate again.

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt=0 is FALSE

NOTE: There were 4 observations read from the data set WORK.PARMSG2.

NOTE: The data set WORK.NEWNAMES2 has 4 observations and 10 variables.

NOTE: DATA statement used (Total process time):

  real time 0.04 seconds

  cpu time 0.05 seconds

SYMBOLGEN: Macro variable LAMBDA resolves to 0.35

NOTE: The data set WORK.LAMBDA has 1 observations and 3 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

MLOGIC(MIXTRAN): %PUT amtlambda= &amtlambda

SYMBOLGEN: Macro variable AMTLAMBDA resolves to A_LAMBDA

amtlambda= A_LAMBDA

SYMBOLGEN: Macro variable LAMBDABOUNDS resolves to bounds A_LAMBDA>0.01;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %IF condition &lambdabounds eq is FALSE

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

NOTE: There were 4 observations read from the data set WORK.NEWNAMES2.

NOTE: There were 1 observations read from the data set WORK.RANDOM2.

NOTE: There were 1 observations read from the data set WORK.LAMBDA.

NOTE: The data set WORK.START2 has 6 observations and 4 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.01 seconds

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

NOTE: There were 6 observations read from the data set WORK.START2.

NOTE: The data set WORK.TRANS2 has 4 observations and 4 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

NOTE: There were 4 observations read from the data set WORK.TRANS2.

NOTE: The data set WORK.OUT2 has 1 observations and 5 variables.

NOTE: PROCEDURE TRANSPOSE used (Total process time):

  real time 0.01 seconds

  cpu time 0.02 seconds

SYMBOLGEN: Macro variable SEQ resolves to

MLOGIC(MIXTRAN): %IF condition &seq ne is FALSE

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt>0 is TRUE

MLOGIC(MIXTRAN): %LET (variable name is K)

SYMBOLGEN: Macro variable K resolves to 1

SYMBOLGEN: Macro variable K resolves to 1

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition (&k ne (&cnt_amt+1)) is TRUE

MLOGIC(MIXTRAN): %DO %UNTIL(&k=(&cnt_amt+1)) loop beginning.

MLOGIC(MIXTRAN): %LET (variable name is K)

SYMBOLGEN: Macro variable K resolves to 1

SYMBOLGEN: Macro variable K resolves to 2

SYMBOLGEN: Macro variable K resolves to 2

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL(&k=(&cnt_amt+1)) condition is FALSE; loop will iterate again.

MLOGIC(MIXTRAN): %LET (variable name is K)

SYMBOLGEN: Macro variable K resolves to 2

SYMBOLGEN: Macro variable K resolves to 3

SYMBOLGEN: Macro variable K resolves to 3

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %DO %UNTIL() condition is TRUE; loop will not iterate again.

SYMBOLGEN: Macro variable SEQ resolves to

MLOGIC(MIXTRAN): %IF condition &seq ne is FALSE

SYMBOLGEN: Macro variable CNT_AMT resolves to 2

MLOGIC(MIXTRAN): %IF condition &cnt_amt=0 is FALSE

NOTE: There were 1 observations read from the data set WORK.OUT2.

NOTE: The data set WORK.EQN2 has 1 observations and 7 variables.

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.00 seconds

MLOGIC(MIXTRAN): %PUT "eta2 is " &eta2

SYMBOLGEN: Macro variable ETA2 resolves to A01_INTERCEPT+A02_SEX*SEX+A03_AGEY*AGEY + u2

"eta2 is " A01_INTERCEPT+A02_SEX*SEX+A03_AGEY*AGEY + u2

SYMBOLGEN: Macro variable VARGROUP resolves to

MLOGIC(MIXTRAN): %IF condition &vargroup ne is FALSE

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

SYMBOLGEN: Macro variable PRINT_ON resolves to

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable TITLES resolves to 0

NOTE: There were 6 observations read from the data set WORK.START2.

NOTE: The data set WORK.START2VARGRP has 6 observations and 4 variables.

NOTE: DATA statement used (Total process time):

  real time 0.01 seconds

  cpu time 0.00 seconds

SYMBOLGEN: Macro variable NLOPTIONS resolves to

SYMBOLGEN: Macro variable START_VAL2 resolves to start2vargrp

SYMBOLGEN: Macro variable REPLICATE resolves to **unreplicated;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable LAMBDABOUNDS resolves to bounds A_LAMBDA>0.01;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

SYMBOLGEN: Macro variable VARGROUP resolves to

MLOGIC(MIXTRAN): %IF condition &vargroup ne is FALSE

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

SYMBOLGEN: Macro variable ETA2 resolves to A01_INTERCEPT+A02_SEX*SEX+A03_AGEY*AGEY + u2

SYMBOLGEN: Macro variable LAMBDABOUNDS resolves to bounds A_LAMBDA>0.01;

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

MLOGIC(MIXTRAN): %IF condition (&lambdabounds eq ) is FALSE

SYMBOLGEN: Macro variable LAMBDA resolves to 0.35

MLOGIC(MIXTRAN): %IF condition &lambda ne 0 is TRUE

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable AMTLAMBDA resolves to A_LAMBDA

SYMBOLGEN: Macro variable AMTLAMBDA resolves to A_LAMBDA

SYMBOLGEN: Macro variable AMTLAMBDA resolves to A_LAMBDA

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable RESPONSE resolves to CA

SYMBOLGEN: Macro variable VU2 resolves to A_VAR_U2

SYMBOLGEN: Macro variable SUBJECT resolves to ID

SYMBOLGEN: Macro variable VARGROUP resolves to

MLOGIC(MIXTRAN): %IF condition &vargroup ne is FALSE

ERROR: SUBJECT= variable must be nonmissing in observation 1.

NOTE: The SAS System stopped processing this step because of errors.

WARNING: Output 'ConvergenceStatus' 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.

WARNING: Output 'FitStatistics' 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.

WARNING: Output 'AdditionalEstimates' 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.

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.

WARNING: The data set WORK.PREDU2U may be incomplete. When this step was stopped there were 0 observations and 0 variables.

WARNING: The data set WORK.PREDEINTU may be incomplete. When this step was stopped there were 0 observations and 0 variables.

WARNING: The data set WORK.PREDX2B2U may be incomplete. When this step was stopped there were 0 observations and 0 variables.

NOTE: PROCEDURE NLMIXED used (Total process time):

  real time 0.09 seconds

  cpu time 0.09 seconds

ERROR: File WORK.CONVF2.DATA does not exist.

NOTE: Numeric values have been converted to character values at the places given by: (Line)Smiley SadColumn).

  6709:223

NOTE: The SAS System stopped processing this step because of errors.

NOTE: DATA statement used (Total process time):

  real time 0.01 seconds

  cpu time 0.01 seconds

MLOGIC(MIXTRAN): %LET (variable name is CCSIN)

WARNING: Apparent symbolic reference CONVIN not resolved.

SYMBOLGEN: Macro variable CCSIN resolves to 0

MLOGIC(MIXTRAN): %IF condition &ccsin eq 0 is TRUE

MLOGIC(MIXTRAN): %PUT ****************************************************

****************************************************

MLOGIC(MIXTRAN): %PUT ##! Convergence Problem from PROC NLMIXED

##! Convergence Problem from PROC NLMIXED

MLOGIC(MIXTRAN): %PUT ##! Macro MIXTRAN Stopped Due to Convergence Error in Amount Model

##! Macro MIXTRAN Stopped Due to Convergence Error in Amount Model

MLOGIC(MIXTRAN): %PUT ##! Response Variable is &response

SYMBOLGEN: Macro variable RESPONSE resolves to CA

##! Response Variable is CA

MLOGIC(MIXTRAN): %PUT ##! data is &data

SYMBOLGEN: Macro variable DATA resolves to kenyad.MIdata

##! data is kenyad.MIdata

MLOGIC(MIXTRAN): %PUT ##! weight variable is &replicate_var

SYMBOLGEN: Macro variable REPLICATE_VAR resolves to dummywt

SYMBOLGEN: Some characters in the above value which were subject to macro quoting have been unquoted for printing.

##! weight variable is dummywt

MLOGIC(MIXTRAN): %PUT ##! ERROR MSG: &convin

WARNING: Apparent symbolic reference CONVIN not resolved.

##! ERROR MSG: &convin

MLOGIC(MIXTRAN): %PUT ****************************************************

****************************************************

MLOGIC(MIXTRAN): %LET (variable name is CONVFLAG)

MLOGIC(MIXTRAN): %LET (variable name is FAIL_COUNT)

WARNING: Apparent symbolic reference FAIL_COUNT not resolved.

WARNING: Apparent symbolic reference FAIL_COUNT not resolved.

ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric operand is required. The condition was:

  &fail_count+1

ERROR: The macro MIXTRAN will stop executing.

MLOGIC(MIXTRAN): Ending execution.

2207

2208 OPTIONS NOSYNTAXCHECK;

2209 ODS HTML CLOSE;

SYMBOLGEN: Macro variable GRAPHTERM resolves to

2210 &GRAPHTERM; ;*';*";*/;RUN;

NOTE: The SAS System stopped processing this step because of errors.

NOTE: DATA statement used (Total process time):

  real time 0.03 seconds

  cpu time 0.02 seconds

2210 ! QUIT;

2211 QUIT;RUN;

2212 ODS HTML5 (ID=WEB) CLOSE;

2213

2214 ODS RTF (ID=WEB) CLOSE;

2215 ODS PDF (ID=WEB) CLOSE;

NOTE: ODS PDF(WEB) printed no output.

  (This sometimes results from failing to place a RUN statement before the ODS PDF(WEB) CLOSE statement.)

2216 FILENAME _GSFNAME;

NOTE: Fileref _GSFNAME has been deassigned.

2217 DATA _NULL_;

2218 RUN;

NOTE: DATA statement used (Total process time):

  real time 0.00 seconds

  cpu time 0.01 seconds

2219 OPTIONS NOTES STIMER SOURCE SYNTAXCHECK;

2220

Super User
Posts: 11,343

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

Is this log generated when running on the sample data shown?

Occasional Contributor
Posts: 14

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

no the log is from when I run my data

Super User
Posts: 11,343

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

Run your program with your example data. If you don't get the error then it is likely the original data does have a problem that you haven't found yet.

Super User
Super User
Posts: 7,076

Re: ERROR: SUBJECT= variable must be nonmissing in observation 1.

It looks like some intermediate data set that was fed to NLMIXED has missing values of ID.


I would turn off SYMBOLGEN and MLOGIC, but leave on MPRINT so that you get a readable log.

The error message is from PROC NLMIXED, but I cannot see the PROC NLMIXED code that the macro generated.

You might need to edit the macro and remove any places where it is turning off MPRINT or NOTES options so that you can see the log.

Ask a Question
Discussion stats
  • 7 replies
  • 683 views
  • 0 likes
  • 5 in conversation