Skip to content
Probably the biggest dataset of Names, worldwide.
Shell Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
eng_dictionary 1.9 Jun 9, 2019
generation 1.7 Jun 9, 2019
misc 1.9 Jun 9, 2019
names_dataset 1.9 Jun 9, 2019
.gitignore Update Jun 22, 2019 dict Apr 15, 2019 dict Apr 15, 2019 1.9 Jun 9, 2019

First and Last Names Dataset

Downloads Downloads

Attempt to make a good dataset with a high precision / recall.

  • ~160k first names
  • ~100k last names


pip install names-dataset


from names_dataset import NameDataset
m = NameDataset()
echo -e "$(python 'Brian is in the kitchen while Amanda is watching the TV on the sofa.\nThey are both waiting for Alfred to come.')"

How reliable is it?

Well, it depends if you are looking for a high recall or a high precision. For example, the word Rose can be either a name or a noun. If we include it in the list, then we increase the precision but we decrease the recall. And vice versa, if it's not in the list. In our case, we emphasize more on precision. So I would say the best use case here is to check whether it's a name or not based on a prior knowledge that the customer has submitted a name. If you are using this tool to look for name entities in the text, then be prepared to have a lot of false positive (rose is an example).

Here is an example on a (old) text: ALI BABA AND THE FORTY THIEVES.


I don't own the data obviously. It's fetched from the websites listed in:

So I guess the most strict software license should apply here.

Sources and References

Exhaustive list of all the possible websites. Not all are used since there is a lot of garbage in the lists.

You can’t perform that action at this time.