Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- require 'csv'
- CSV_FILENAME = "some_names.csv"
- names_hash = {}
- matches_array = []
- CSV.foreach(CSV_FILENAME) do |row|
- last_name,first_name = row[0],row[1]
- if names_hash[last_name].nil?
- names_hash[last_name] = []
- end
- names_hash[last_name].push(first_name)
- end
- names_hash.map do |last_name, first_names|
- initials = first_names.map {|name| name[0]}.uniq
- initials.each do |initial|
- matching_names = first_names.select {|n| n[0] == initial}
- if matching_names.count > 1
- matching_names.each do |first_name|
- matches_array << "#{first_name} #{last_name}"
- end
- end
- end
- end
- puts matches_array
Add Comment
Please, Sign In to add comment