BookmarkSubscribeRSS Feed
devarayalu
Fluorite | Level 6

data one;

infile datalines missover;

input age;

if age is missing then age=9999;

else age=age;

cards;

8

01

20

0

1

2

;

proc print;

run;

3 REPLIES 3
Quentin
Super User

Hi,

You probably want the missing FUNCTION.  Try:

if missing(age) then age=9999;

Also I would suggest you use SAS special missing values instead of numeric codes.  So:

if missing(age) then age=.S;

--Q.


BASUG is hosting free webinars Next up: Jane Eslinger presenting PROC REPORT and the ODS EXCEL destination on Mar 27 at noon ET. Register now at the Boston Area SAS Users Group event page: https://www.basug.org/events.
cwilson
Calcite | Level 5

Also, the "is missing" syntax is used with the "where" clause, as in Proc SQL or as a filter on Proc freq, for example.

Proc freq data = . . . ;

where age is missing ;

tables . .  . ;

In a DATA step, use:

if age = . then age = 9999 ;

(and you really don't need the else clause)

ballardw
Super User

Or

if missing(age) then age=9999;

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to choose a machine learning algorithm

Use this tutorial as a handy guide to weigh the pros and cons of these commonly used machine learning algorithms.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 3 replies
  • 1527 views
  • 0 likes
  • 4 in conversation