BookmarkSubscribeRSS Feed
gra_in_aus
Quartz | Level 8

I have started using DS2 programming and have hit a snag.  I have tried to convert a data step into DS2, however I am not 100 % sure that the procedure is handling the _error_ :

 

proc ds2;
data spdework.dsn1 (overwrite=yes) spdework.dsn2 (overwrite=yes);
  dcl char brand country ;
  dcl double _error_ ;
  method init();
  end;
  method run();
 SET spdework.aami_rif_1 (rename=( nvar_pre=nvar));

 IF gdp>0 and content>0 then
  country='US';
 else if gdp>0 then
  country='UK';
 else if content>0 then
  country='EU';
 else
  PUT 'errors';

 if nvar>0 then
  nvar=1;
 brand='Brand X  ';
 set {select distinct customer from spdework.dsn3};
 if _error_ then
  output spdework.dsn1;
 else
  output spdework.dsn2;

  end;
  method term();
  end;
enddata;
run; quit;

 

In data step I was getting 606490 in DS2 112810 obs.  Any help would be appreciated.

 

Thanks

1 REPLY 1
BrunoMueller
SAS Super FREQ

Hi

 

The _ERROR_ is an automatic variable within the DATA Step. You do not have the same variable available in DS2.

 

From the doc:

Automatic Variables

_ERROR_
is 0 by default but is set to 1 whenever an error is encountered, such as an input data error, a conversion error, or a math error, as in division by 0 or a floating point overflow.
 
I assume there is some data type conversion, this triggered the _ERROR_ to be set to 1, whereas this does not happen in DS2.
 
Bruno

SAS INNOVATE 2024

Innovate_SAS_Blue.png

Registration is open! SAS is returning to Vegas for an AI and analytics experience like no other! Whether you're an executive, manager, end user or SAS partner, SAS Innovate is designed for everyone on your team. Register for just $495 by 12/31/2023.

If you are interested in speaking, there is still time to submit a session idea. More details are posted on the website. 

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

Get the $99 certification deal.jpg

 

 

Back in the Classroom!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 1 reply
  • 694 views
  • 0 likes
  • 2 in conversation