gender_detector
gender_detector copied to clipboard
Get gender from first name in Ruby.
= Gender Detector
{
}[https://travis-ci.org/bmuller/gender_detector]
Gender Detector is a Ruby library that will tell you the most likely gender of a person based on first name. It uses the underlying data from the program "gender" by Jorg Michael (described {here}[http://www.autohotkey.com/community/viewtopic.php?t=22000]).
== Installation
Add this line to your application's Gemfile:
gem 'gender_detector'
And then execute:
$ bundle
Or install it yourself as:
$ gem install gender_detector
== Usage
Its use is pretty straightforward:
require 'gender_detector' d = GenderDetector.new d.get_gender("Bob") :male d.get_gender("Sally") :female d.get_gender("Pauley") # should be androgynous :andy
The result will be one of andy (androgynous), male, female, mostly_male, or mostly_female. Any unknown names are considered andies.
I18N is supported if either UnicodeUtils or ActiveSupport are present. To get I18n support, add either one to your Gemfile:
gem 'unicode_utils' # or gem 'activesupport'
Afterwards, gender detection will work for names with non-ASCII characters as well:
d.get_gender("Álfrún") :female
Additionally, you can give preference to specific countries:
d.get_gender("Jamie") => :female d.get_gender("Jamie", :great_britain) => :mostly_male
If you have an alterative data file, you can pass that in as an optional filename argument to the GenderDetector. Additionally, you can create a detector that is not case sensitive (default is to be case sensitive):
d = GenderDetector.new(:case_sensitive => false) d.get_gender "sally" => :female d.get_gender "Sally" => :female
Try to avoid creating many GenderDetectors, as each creation means reading in the data file.
= Licenses The gender_detector code is distributed under the GPLv3. The data file nam_dict.txt is released under the GNU Free Documentation License.