hello experts,
I need a help to solve a query. I have a dataset and column called NAME but this column Name has some kind of encoding data like .
I want to check which row has encoding data of ASC value which is falling between 161 to 255.
Suppose if you below code and data , so it should check each observation each string and identify the each string ASC value and if any ASC value in observation is falling between 161 to 255, then a new column RANK_VALUE should give result of ASC Value,
if no value from 161 to 255, then null should pass.
data test;
input name $32.;
datalines;
RÃm
John
èra
©kumara
¶cris
;
run;output :
Name Rank_value
RÃm 195
John
èra 232
©kumara 169
¶cris 182
And have you tried the rank procedure:
http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000212189.htm
Random words, ahve no idea.
Functions work anywhere in arrays, or loops, anywhere in datastep. Provide test data in the form of a datastep, show what the output should look like, explain the logic between the two.
data test;
input name $32.;
do i=1 to lengthn(name);
rank_value=rank(char(name,i));
output;
end;
datalines;
RÃm
John
èra
©kumara
¶cris
;
run;
That might not actually do what you want however, try it out. Some other possiblities:
http://www.sascommunity.org/planet/blog/category/rank/
29May example, shows compress removing specials, but you could reverse it with:
data want; set have; if lengthn(compress(name," ","ad"))>0 then result="special character"; run;
So remove the alaph and numerics then if the lengthn is greater than 0 you know you have odd characters.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.
Ready to level-up your skills? Choose your own adventure.