Help using Base SAS procedures

Why failed to output?

Reply
Frequent Contributor
Posts: 131

Why failed to output?

I used OUTPUT statement as below. For the IF statement, no OUTPUT used. For the ELSE statement, there is an OUTPUT statement. However, the results showed that cases with age<=30 are in fact not in the dataset work.a. Is this caused by the OUTPUT statement? But the OUTPUT statement is enclosed in the ELSE, and should not affect the IF condition. I must be wrong?

DATA work.a;
SET work.b;
IF (age>30) THEN status='mature';
ELSE THEN
DO;
status='young';
OUTPUT;
END;
RUN;
Super Contributor
Super Contributor
Posts: 3,174

Re: Why failed to output?

For some self-initiated desk-checking, consider adding the SAS program line below (add the code-line one or more places with "nn" identification as unique string to generate much more info to your SASLOG so you can interrogate the processing flow:

PUTLOG '>DIAG-nn' / _ALL_;

Otherwise, you will want to share your SAS log, not a selected portion of your program.


Scott Barry
SBBWorks, Inc.
Super Contributor
Super Contributor
Posts: 365

Re: Why failed to output?

Hello Bncoxuk,

Check your LOG. It looks like you have an error:

ELSE THEN should be simply ELSE.

Sincerely,
SPR
Ask a Question
Discussion stats
  • 2 replies
  • 138 views
  • 0 likes
  • 3 in conversation