Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Module to intelligently handle names with two last names and other best practices?

by BrowserUk (Pope)
on Jun 27, 2018 at 18:09 UTC ( #1217531=note: print w/replies, xml ) Need Help??


in reply to Module to intelligently handle names with two last names and other best practices?

I concur with the advice to store names as indivisible units -- there are several cultures in which the family name comes first and the individual name is second; and either or both can consist of two unhyphenated words.

One tip though is to index the full names by *all* the words including initials -- they contain for matching purposes.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority". The enemy of (IT) success is complexity.
In the absence of evidence, opinion is indistinguishable from prejudice. Suck that fhit
  • Comment on Re: Module to intelligently handle names with two last names and other best practices?

Replies are listed 'Best First'.
Re^2: Module to intelligently handle names with two last names and other best practices?
by AnomalousMonk (Bishop) on Jun 27, 2018 at 18:50 UTC
    ... index the full names by *all* the words ...

    I don't understand that. Wouldn't that just result in an index choked with a zillion John/Jan/Jacob/Juan/Joan/Ioan/Ian/Ivan/... useless entries (and that's just a few of the European variations of the male version of one, simple given name). I agree it's a very frustrating problem. In the end, aren't we stuck with coming up with some massive AI to figure it all out and keep it straight and usable?


    Give a man a fish:  <%-{-{-{-<

      Yes, but it can allow you to match "J L Smith" against "Mr John L. Smith" or even "Jim Smithe" and similar variations. Usually that alone won't be enough, but combined with other data and perhaps human oversight it can allow you to detect/eliminate duplicates. (You do have to be careful of John Smith Senior and John Smith Junior who live at the same address.)

      I implemented this years ago on a 6 million name dataset and it (helped) illiminate over 20,000 misreads, data entry errors and fraudulent attempts. The indexes were implemented as bitfields -- 1 bit per full name -- which allowed any entry to be rapidly compared against all the names and reduced to a tiny subset of the 6 million for further manual investigation.


      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      "Science is about questioning the status quo. Questioning authority". The enemy of (IT) success is complexity.
      In the absence of evidence, opinion is indistinguishable from prejudice. Suck that fhit

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1217531]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (5)
As of 2019-12-06 00:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (154 votes). Check out past polls.

    Notices?