gpt4 book ai didi

c# - 在 C# 中使用 Linq 计算评分平均值

转载 作者:太空宇宙 更新时间:2023-11-03 20:09:32 28 4
gpt4 key购买 nike

我有一个评分数组,其中 ratings[i] = j 表示 i 有 j 个评分,其中 i 在 1 到 10 之间。如何使用 linq 计算平均评分?

for (int i = 1; i <= 10;i++)
{
sum += i * ratings[i];
nr += ratings[i];
}
ratingAvg = sum / nr;

如果我使用 ratings.Sum()/ratings.Count() 它不会执行我想要的操作。我需要做一些像 ratings.Sum(w => index_of_w_in_the_array * w.value).

这样的事情

最佳答案

有几种方法可以做到这一点,例如使用 Select 将每个评级的索引包含在计算中:

var average = ratings.Select((r, n) => r * n).Sum() / ratings.Sum();

如果评级本身是整数,您需要将上面的一侧转换为 double,这样您就不会对结果进行整数除法。

关于c# - 在 C# 中使用 Linq 计算评分平均值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20977541/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com