BookmarkSubscribeRSS Feed
angorwat
Calcite | Level 5

Hi

 

I have two datasets - file 1 (50K records ) and file 2 (800K records) both have customer names. I matched these names using the DQMATCH function.

After the match  the output have the following variables - Name1, Name2, match_code_name, match_code_name1.  I have close to 5000  records in the output file.

 

Then, I used the SPEDIS function between the variables name1 and name2 and rank the output record based on the rank value. I.E., Lower rank higher probability of matches, ‘0’ rank is exact match.

 

I just want to know at what value of rank I need to stop as I can see some good match at the value 67. I want to extract the best match, don’t want to dump these 5000 records as an output records.

 

Is there any other approach I can use.

 

Please advise.

 

2 REPLIES 2
ChrisNZ
Tourmaline | Level 20

There is no best method for fuzzy matches. It all depends on your data, and on the number of matching errors you are prepared to tolerate.

 

Using several matching methods, and possibly several iterations, rather than just one, is a good idea.

 

Creating a "level of confidence in the match quality" rating field is also a good idea.

 

Also look at function COMPLEV (and COMPGED) which I found to be sometimes better for my use than SPEDIS.

 

angorwat
Calcite | Level 5

Thanks Chris

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

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