Hi,
How can the below excel function coded in SAS?
VAR01 | VAR02 |
1234567890123 | =RIGHT(A2,10) |
The result must be "4567890123".
Thanks,
Olp
No. if it is character. I would write this.
data test;
v1='1234567890123';
v2=substr(strip(v1),length(v1)-9);
put v1= v2= ;
run;
Xia Keshan
There is no straightforward equal name function. SAS(R) 9.4 Functions and CALL Routines: Reference, Third Edition substr can do the job when you give the position. (length - ... )
There are a lot of functions in SAS it could be your soltion is easier thinking in SAS than in Excel.
It was character type or numeric type ?
data _null_; v1=1234567890123; v2=mod(v1,10**10); put v1= best32. v2=; run;
Xia Keshan
Hi Xia,
It is character type.
I modified your code and it became this.
data test;
v1='1234567890123';
v2=put(mod(v1,10**10),10.);
run;
v1 | v2 |
1234567890123 | 4567890123 |
Now, I've had what I need.
Thanks for your quick answer.
Olp
No. if it is character. I would write this.
data test;
v1='1234567890123';
v2=substr(strip(v1),length(v1)-9);
put v1= v2= ;
run;
Xia Keshan
Yep as character is better for substr, The precision better said limits to precision will cause nice effects expected above 12 digits, sure above 15 digits.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.