BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
eagles_dare13
Obsidian | Level 7

When I write:

%let x = 0.32;

How can I make sure that x is initialized as a numeric variable and not a character variable? I want to be able to do numerical operations on x.

1 ACCEPTED SOLUTION

Accepted Solutions
ballardw
Super User

You can perform numerical calcuations to create additional MACRO variable values using the %sysfunc or %eval<integers only> or %sysevalf.

 

%let x = 0.32;

%let y = %sysevalf(&x * 6.2);

%let z = %sysfunc( max(&x,&y,23));

%put y= &y z= &z;

If the idea is to do numeric operations in a data step then your X variable would be treated and used as a constant value.

View solution in original post

2 REPLIES 2
jakarman
Barite | Level 11

macro variables are always text based as the goal is modify the sas source code.

In normal situations numerical calculations are exceptional in a sas macro as they are processed within a sas-datastep.

Are you sure you are not mixing up some goals of the several different coding languages within a SAS environment?     

---->-- ja karman --<-----
ballardw
Super User

You can perform numerical calcuations to create additional MACRO variable values using the %sysfunc or %eval<integers only> or %sysevalf.

 

%let x = 0.32;

%let y = %sysevalf(&x * 6.2);

%let z = %sysfunc( max(&x,&y,23));

%put y= &y z= &z;

If the idea is to do numeric operations in a data step then your X variable would be treated and used as a constant value.

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
  • 2 replies
  • 3547 views
  • 0 likes
  • 3 in conversation