比较多维哈希



我有一个巨大的散列(JSON),我想通过删除不同的值,然后合计一个值集,将其与"主密钥"进行比较。

我认为这将是一个很好的方法来处理复杂的评分标准的测试评分。

关于如何做到这一点的建议?有什么宝石可以让我的生活更轻松吗?

{
  "A" => 10,
  "B" => 7,
  etc
    ....

散列像test[answer] => test[point_value]一样构造,并且问题关键字/值是答案/点值。

因此,如果我想与master_key进行比较,并删除不同的项(而不是像arr1-arr2那样删除相似的项……然后将值相加,什么是最好的?

在将哈希转换为ruby哈希后,我会做这样的

 tester = { :"first" =>  { :"0" => { :"0" => { :"B" => 10 }, :"1" => { :"B" => 7 }, :"2" => { :"B" => 5 } } }}
 master = { :"first" => { :"0" => { :"0" => { :"A" => 10 }, :"1" => { :"B" => 7 }, :"2" => { :"B" => 5 } } }}
tester.reduce(0) do |score, (test,  section)| 
  section.each do |group, questions|
    questions.each do |question, answer|
      if answer.keys.first == master[test][group][question].keys.first
        score += answer.values.first
      end
    end
  end
  score
end

相关内容

  • 没有找到相关文章

最新更新