Diversity prediction theorem: Difference between revisions

(Added Wren)
Line 1,090:
prediction diversity: 10.5
</pre>
 
=={{header|Ruby}}==
{{trans|D}}
<lang ruby>def square(x)
return x * x
end
 
def mean(a)
return a.sum(0.0) / a.size
end
 
def meanSquareDiff(a, predictions)
return mean(predictions.map { |x| square(x - a) })
end
 
def diversityTheorem(truth, predictions)
average = mean(predictions)
print "average-error: ", meanSquareDiff(truth, predictions), "\n"
print "crowd-error: ", square(truth - average), "\n"
print "diversity: ", meanSquareDiff(average, predictions), "\n"
print "\n"
end
 
def main
diversityTheorem(49.0, [48.0, 47.0, 51.0])
diversityTheorem(49.0, [48.0, 47.0, 51.0, 42.0])
end
 
main()</lang>
{{out}}
<pre>average-error: 3.0
crowd-error: 0.11111111111111269
diversity: 2.888888888888889
 
average-error: 14.5
crowd-error: 4.0
diversity: 10.5</pre>
 
=={{header|Scala}}==
1,452

edits