SAS Programming

DATA Step, Macro, Functions and more
BookmarkSubscribeRSS Feed
deleted_user
Not applicable
I learned long ago that it is better to use 'eq' when making comparisons and to use the = sign when setting the value of a variable. As in

if x eq 0 then y = 1;

I have always done it this way, but I do not remember why. So today I was trying to fix a colleague's program which seemed logically correct on the surface, but the output was clearly wrong. Eventually I tried changing all his mathematical symbols to the letter equivilent (eq, gt, ....) and the program works correctly now. But I don't know how to explain WHY it should be this way (to a guy whose first language is not english but who makes his own electronic equipment for his guitar).
1 REPLY 1
LinusH
Tourmaline | Level 20
The eq operator can only be used in comparisons, in IF and WHERE for example. The = operator can be used both in comparisons and in assignments.

Some people think it's easier to read the code if using different operators in assignment and comparison statements, but technically, there is no difference.

/Linus
Data never sleeps

sas-innovate-white.png

Special offer for SAS Communities members

Save $250 on SAS Innovate and get a free advance copy of the new SAS For Dummies book! Use the code "SASforDummies" to register. Don't miss out, May 6-9, in Orlando, Florida.

 

View the full agenda.

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 14884 views
  • 1 like
  • 2 in conversation