This code I am using in my situation was taken from (http://blogs.sas.com/content/sgf/2015/01/27/how-to-perform-a-fuzzy-match-using-sas-functions/). Usually, the point option is coupled with stop to prevent infinite looping. I am not sure why stop statment is not used here.
data test; set dsn1; tmp1=soundex(name1); do i=1 to nobs; set dsn2 point=i nobs=nobs; tmp2=soundex(name2); dif=compged(tmp1,tmp2); if dif<=50 then do; possible_match='Yes'; drop i tmp1 tmp2; output; end; end; run;
That's true, STOP is usually employed in combination with POINT=. In this case, however, SET DSN1 will eventually run out of observations to read, stopping the DATA step.
That's true, STOP is usually employed in combination with POINT=. In this case, however, SET DSN1 will eventually run out of observations to read, stopping the DATA step.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
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.