<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Using macro inside PROC NLP results in error in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378688#M91071</link>
    <description>&lt;P&gt;Hi gamotte, thank you for your reply. I have changed my macro by removing the %s on the&amp;nbsp;if statement (and kept it on the do loop)&amp;nbsp;to get:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%macro h2f1(GH,a=,b=,c=,z=); 
	gausshyper=1; tempgauss=1;
	if abs(&amp;amp;z.)&amp;lt;1 then do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	end;

	if abs(&amp;amp;z.)=1 and &amp;amp;c. – &amp;amp;a. – &amp;amp;b. &amp;gt; 0 then do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	end;
	
	&amp;amp;GH=gausshyper;

%mend h2f1;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It now runs the do=j to 160 loop, however it now produces this error with the preceding lines:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;MLOGIC(H2F1):  Beginning execution.
MLOGIC(H2F1):  Parameter GH has value F
MLOGIC(H2F1):  Parameter A has value r+s+x
MLOGIC(H2F1):  Parameter B has value param2
MLOGIC(H2F1):  Parameter C has value r+s+x+1
MLOGIC(H2F1):  Parameter Z has value absab/(maxab+tx)
MPRINT(H2F1):   gausshyper=1;
MPRINT(H2F1):   tempgauss=1;
SYMBOLGEN:  Macro variable Z resolves to absab/(maxab+tx)
MPRINT(H2F1):   if abs(absab/(maxab+tx))&amp;lt;1 then do;
MLOGIC(H2F1):  %DO loop beginning; index variable J; start value is 1; stop value is 160; by 
      value is 1.  
SYMBOLGEN:  Macro variable A resolves to r+s+x
SYMBOLGEN:  Macro variable J resolves to 1
NOTE 137-205: Line generated by the invoked macro "H2F1".
124           tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
                                            _
                                            22
124      ! gausshyper=gausshyper + tempgauss;
ERROR 22-322: Syntax error, expecting one of the following: !, !!, &amp;amp;, ), *, **, +, -, /, &amp;lt;, &amp;lt;=, 
              &amp;lt;&amp;gt;, =, &amp;gt;, &amp;gt;&amp;lt;, &amp;gt;=, AND, EQ, GE, GT, IN, LE, LT, NE, NOTIN, OR, ^&amp;lt;, ^=, ^&amp;gt;, |, ||, 
              ~&amp;lt;, ~=, ~&amp;gt;.  &lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you, the initial problem has resolved but now I'm unsure how to resolve this new one (apologies, I'm still learning the&amp;nbsp;macro side of SAS).&lt;/P&gt;</description>
    <pubDate>Mon, 24 Jul 2017 13:54:58 GMT</pubDate>
    <dc:creator>edmb</dc:creator>
    <dc:date>2017-07-24T13:54:58Z</dc:date>
    <item>
      <title>Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378662#M91057</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I'm trying to use a macro inside a PROC NLP but when running I get the following error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;ERROR: A character operand was found in the %EVAL function or %IF condition where a numeric 
       operand is required. The condition was: abs(&amp;amp;z.)&amp;lt;1 
ERROR: The macro H2F1 will stop executing.&lt;/PRE&gt;&lt;P&gt;Here is my code:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options mlogic mprint symbolgen;

data pnbd_sample;
	infile datalines dlm='09'x  dsd truncover;
	input	@1 custID $2. 
			@4 FirstTransDt DDMMYY10. 
			@15 LastTransDt DDMMYY10. 
			@26 T 2. 
			@29 tx 2. 
			@31 x 3.;
	format 	 custID $2.
		 	 FirstTransDt DATE9. 
			 LastTransDt DATE9. 
			 T 2. 
			 tx 2. 
			 x 3.;
	datalines;
01 31/03/2014 30/06/2017 39 0 11
02 30/11/2014 30/04/2016 31 14 0
03 31/03/2014 30/09/2015 39 21 0
04 31/01/2014 30/04/2017 41 2 222
05 31/01/2014 31/05/2016 41 13 0
06 31/01/2014 31/10/2015 41 20 0
07 31/01/2014 30/06/2017 41 0 6
08 31/07/2014 31/05/2016 35 13 0
09 28/02/2014 31/05/2017 40 1 7
10 31/12/2013 30/06/2017 42 0 117
11 31/03/2014 30/06/2017 39 0 6
12 31/05/2014 31/03/2016 37 15 0
13 30/04/2014 30/06/2017 38 0 2
14 30/04/2014 30/06/2017 38 0 48
15 30/09/2014 31/12/2015 33 18 0
16 31/08/2015 30/06/2017 22 0 1
17 31/01/2014 31/12/2016 41 6 1
18 28/02/2014 30/06/2017 40 0 48
19 31/03/2014 31/12/2015 39 18 0
20 31/07/2014 30/06/2017 35 0 60
;
run;

%macro h2f1(GH,a=,b=,c=,z=); 
	gausshyper=1; tempgauss=1;
	%if abs(&amp;amp;z.)&amp;lt;1 %then %do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	%end;

	%if abs(&amp;amp;z.)=1 and &amp;amp;c. – &amp;amp;a. – &amp;amp;b. &amp;gt; 0 %then %do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	%end;
	
	&amp;amp;GH=gausshyper;

%mend h2f1;


proc nlp data=pnbd_sample tech=tr cov=2 vardef=n pcov phes;
	max lglike;
	parms r=0.1, alpha=0.1,  s=0.1,  beta=0.1;
	bounds r alpha s beta &amp;gt;= 0.000001;

	maxab=max(alpha, beta);
	absab=abs(alpha-beta);
	param2=s+1;
	if alpha &amp;lt; beta then param2=r+x;

	part1 = ((alpha**r)*(beta**s)/gamma(r)) * gamma(r+x);
	part2 = 1/((alpha+T)**(r+x)*(beta+T)**s);

	if absab=0 then do;
		F1=1 / ((maxab+tx)**(r+s+x));
		F2=1 / ((maxab+T)**(r+s+x));
	end;

	else if absab~=0 then do;
		%h2f1(F, a=r+s+x, b=param2, c=r+s+x+1, z=absab/(maxab+tx));
		F1=F/((maxab+tx)**(r+s+x));

		%h2f1(F, a=r+s+x, b=param2, c=r+s+x+1, z=absab/(maxab+T));
		F2=F/((maxab+T)**(r+s+x));
	end;

	lglike = log(part1 * (part2 + (s/(r+s+x))*(F1-F2)));

	ods output  ParameterEstimates=EstParetoNBD;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The lines in the log&amp;nbsp;just before the error are:&lt;/P&gt;&lt;PRE&gt;MLOGIC(H2F1):  Beginning execution.
MLOGIC(H2F1):  Parameter GH has value F
MLOGIC(H2F1):  Parameter A has value r+s+x
MLOGIC(H2F1):  Parameter B has value param2
MLOGIC(H2F1):  Parameter C has value r+s+x+1
MLOGIC(H2F1):  Parameter Z has value absab/(maxab+tx)
MPRINT(H2F1):   gausshyper=1;
MPRINT(H2F1):   tempgauss=1;
SYMBOLGEN:  Macro variable Z resolves to absab/(maxab+tx)&lt;/PRE&gt;&lt;P&gt;It looks as if parameters are resolving to the string expressions, rather than the numerical values, and these are being fed into the macro causing the error.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone know please how I can resolve this error?&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jul 2017 12:39:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378662#M91057</guid>
      <dc:creator>edmb</dc:creator>
      <dc:date>2017-07-24T12:39:02Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378669#M91061</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;edmb wrote:
&lt;P&gt;It looks as if parameters are resolving to the string expressions, rather than the numerical values, and these are being fed into the macro causing the error.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;This is what macro language does : text substitution in order to generate source code.&lt;/P&gt;
&lt;P&gt;When you call your macro function as follows :&lt;/P&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token macroname"&gt;%h2f1&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;F&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; a&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;r&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;s&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;x&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; b&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;param2&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; c&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;r&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;s&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;x&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;&lt;SPAN class="token number"&gt;1&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; z&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;absab&lt;SPAN class="token operator"&gt;/&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;maxab&lt;SPAN class="token operator"&gt;+&lt;/SPAN&gt;tx&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;you say that, whenever &amp;amp;a is&amp;nbsp; encountered in the macro function source code, it should be replaced by the *text* r+s+x.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;amp;z. will thus be resolved as "absab/(maxab+tx)" (wo the quotes) and your test :&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE class=" language-sas"&gt;&lt;CODE class="  language-sas"&gt;&lt;SPAN class="token macrostatement"&gt;%if&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;abs&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;(&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;&amp;amp;&lt;/SPAN&gt;z&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;)&lt;/SPAN&gt;&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;&lt;SPAN class="token number"&gt;1&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;has no sense because you are doing a character by character comparison between abs(absab/(maxab+tx)) and 1.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This should not be a macro language %if but a standard if test&lt;/P&gt;
&lt;P&gt;if abs(&amp;amp;z.)=1 then do; ... end;&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jul 2017 12:59:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378669#M91061</guid>
      <dc:creator>gamotte</dc:creator>
      <dc:date>2017-07-24T12:59:11Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378688#M91071</link>
      <description>&lt;P&gt;Hi gamotte, thank you for your reply. I have changed my macro by removing the %s on the&amp;nbsp;if statement (and kept it on the do loop)&amp;nbsp;to get:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%macro h2f1(GH,a=,b=,c=,z=); 
	gausshyper=1; tempgauss=1;
	if abs(&amp;amp;z.)&amp;lt;1 then do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	end;

	if abs(&amp;amp;z.)=1 and &amp;amp;c. – &amp;amp;a. – &amp;amp;b. &amp;gt; 0 then do;
		%do j=1 %to 160;
		tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
		gausshyper=gausshyper + tempgauss;
		%end;
	end;
	
	&amp;amp;GH=gausshyper;

%mend h2f1;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It now runs the do=j to 160 loop, however it now produces this error with the preceding lines:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;MLOGIC(H2F1):  Beginning execution.
MLOGIC(H2F1):  Parameter GH has value F
MLOGIC(H2F1):  Parameter A has value r+s+x
MLOGIC(H2F1):  Parameter B has value param2
MLOGIC(H2F1):  Parameter C has value r+s+x+1
MLOGIC(H2F1):  Parameter Z has value absab/(maxab+tx)
MPRINT(H2F1):   gausshyper=1;
MPRINT(H2F1):   tempgauss=1;
SYMBOLGEN:  Macro variable Z resolves to absab/(maxab+tx)
MPRINT(H2F1):   if abs(absab/(maxab+tx))&amp;lt;1 then do;
MLOGIC(H2F1):  %DO loop beginning; index variable J; start value is 1; stop value is 160; by 
      value is 1.  
SYMBOLGEN:  Macro variable A resolves to r+s+x
SYMBOLGEN:  Macro variable J resolves to 1
NOTE 137-205: Line generated by the invoked macro "H2F1".
124           tempgauss=tempgauss*(&amp;amp;a. + &amp;amp;j – 1)*(&amp;amp;b. + &amp;amp;j –1)* &amp;amp;z. /((&amp;amp;c. + &amp;amp;j –1)*&amp;amp;j);
                                            _
                                            22
124      ! gausshyper=gausshyper + tempgauss;
ERROR 22-322: Syntax error, expecting one of the following: !, !!, &amp;amp;, ), *, **, +, -, /, &amp;lt;, &amp;lt;=, 
              &amp;lt;&amp;gt;, =, &amp;gt;, &amp;gt;&amp;lt;, &amp;gt;=, AND, EQ, GE, GT, IN, LE, LT, NE, NOTIN, OR, ^&amp;lt;, ^=, ^&amp;gt;, |, ||, 
              ~&amp;lt;, ~=, ~&amp;gt;.  &lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you, the initial problem has resolved but now I'm unsure how to resolve this new one (apologies, I'm still learning the&amp;nbsp;macro side of SAS).&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jul 2017 13:54:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378688#M91071</guid>
      <dc:creator>edmb</dc:creator>
      <dc:date>2017-07-24T13:54:58Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378691#M91072</link>
      <description>&lt;P&gt;You're doing well at identifying the problems.&amp;nbsp; This one is entirely different.&amp;nbsp; Your dash is not really a dash, it's really a wider dash.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Replace all the dashes.&amp;nbsp; Just remove the character, and replace it by typing the proper dash on your keyboard.&amp;nbsp; This sometimes happens when cutting and pasting code using various editors.&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jul 2017 14:02:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378691#M91072</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-07-24T14:02:24Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378697#M91074</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/4954"&gt;@Astounding&lt;/a&gt; wrote:&lt;BR /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Replace all the dashes.&amp;nbsp; Just remove the character, and replace it by typing the proper dash on your keyboard.&amp;nbsp; This sometimes happens when cutting and pasting code using various editors.&lt;/P&gt;&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;What trickery is this?! Cheers!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Though now I get this... feels like we're getting closer!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;MLOGIC(H2F1):  %DO loop index variable J is now 161; loop will not iterate again.
MPRINT(H2F1):   end;
SYMBOLGEN:  Macro variable GH resolves to F
MPRINT(H2F1):   F=gausshyper;
MLOGIC(H2F1):  Ending execution.
128        		F2=F/((maxab+T)**(r+s+x));
129        	end;
130        
131        	lglike = log(part1 * (part2 + (s/(r+s+x))*(F1-F2)));
132        
133        	ods output  ParameterEstimates=EstParetoNBD;
134        run;

NOTE: Your code contains 1319 program statements.
NOTE: Gradient is computed using analytic formulas.
NOTE: Hessian is computed using analytic formulas.
ERROR: Execution Errors for _OBS_= 4 :
ERROR: There are references to missing variables when the program code is executed for _OBS_= 4
WARNING: Your program statements cannot be executed completely.
WARNING: In a total of 1 calls an error occurred during execution of the program statements. NLP 
         attempted to recover by using a shorter step size.
NOTE: The data set WORK.ESTPARETONBD has 4 observations and 5 variables.
NOTE: There were 20 observations read from the data set WORK.PNBD_SAMPLE.
NOTE: The PROCEDURE NLP printed pages 1-2.
NOTE: PROCEDURE NLP used (Total process time):
      real time           2.01 seconds
      cpu time            1.98 seconds&lt;/PRE&gt;&lt;P&gt;EDIT: I have located&amp;nbsp;why this error occurs...&amp;nbsp;the formulae:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;part1 = ((alpha**r)*(beta**s)/gamma(r)) * gamma(r+x);&lt;BR /&gt;part2 = 1/((alpha+T)**(r+x)*(beta+T)**s);&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;breakdown at very large x values... I can understand why they might... though why should they? Does SAS not have a memory/calculation limit?&lt;/P&gt;</description>
      <pubDate>Mon, 24 Jul 2017 15:09:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378697#M91074</guid>
      <dc:creator>edmb</dc:creator>
      <dc:date>2017-07-24T15:09:38Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378927#M91124</link>
      <description>&lt;P&gt;At least you're past the syntax errors.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I don't think I can help with this procedure in particular. &amp;nbsp;But at least the log telling you the observation that is causing trouble. &amp;nbsp;Perhaps you could investigate the data values on that observation. &amp;nbsp;Any missing values in the data?&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jul 2017 11:21:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378927#M91124</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-07-25T11:21:19Z</dc:date>
    </item>
    <item>
      <title>Re: Using macro inside PROC NLP results in error</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378929#M91126</link>
      <description>&lt;P&gt;No worries, thank you both for your assistance.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jul 2017 11:29:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-macro-inside-PROC-NLP-results-in-error/m-p/378929#M91126</guid>
      <dc:creator>edmb</dc:creator>
      <dc:date>2017-07-25T11:29:39Z</dc:date>
    </item>
  </channel>
</rss>

