Skip to content

Conversation

@skwiens
Copy link

@skwiens skwiens commented Aug 14, 2017

No description provided.

@CheezItMan
Copy link
Collaborator

Interesting how you turned the original data, an array of hashes where each hash is an individual trip and using it to determine the earnings and average rating.

Creating a structure like:

drivers = {
  dr001: [{passenger: "P001", cost: 30, rating: 1}, {passenger: "P003", cost: 15, rating: 4}, {passenger: "P007", cost: 18, rating: 3}]
  dr002:  [{passenger: "P004", cost: 45, rating: 1}, {passenger: "P012", cost: 11, rating: 2}, {passenger: "P064", cost: 18, rating: 5}]
}

would be easier to traverse and links each driver to their trips. You can then loop through them like:

drivers.each do |driver|
  total = 0
  total_ratings = 0
  driver.each do |trip|
    total += trip[:cost]
    total_ratings += trip[:rating]
  end
  puts "Average Pay: #{total.to_f / driver.length}"

  puts "Average Rating: #{rating.to_f / driver.length}"
end

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants