3
Rubyのinject
メソッドは、合計を計算するのに本当にきれいだと思います。私は平均値を計算し、inject
を使用する必要がある場合でも、私はいつもこのようなもので終わる: Rubyの注入機能で平均を計算する方法
total_ranked_query_results = @results.count { |result| result.class == RankedQueryResult }
@results.inject(0.0) { |sum, result| result.class == RankedResult ? sum + result.average_precision : sum }/total_ranked_query_results
は、だから私は基本的に平均値を計算するためにありますどのように多くの
RankedResults
を見つけるために二回反復しなければなりません。
これを回避するには、より良い(rubyesque)方法がありますか?
tmp.lastが誤って計算された最初の例では、それがインクリメントされなければならないが結果がPopularityResultの場合のみ – Tonttu
ありがとう、固定:-) – arnaud576875