Logic 如何计算分数?

Logic 如何计算分数?,logic,blogs,weighted-average,Logic,Blogs,Weighted Average,这个问题与逻辑比任何编程语言都更相关。如果这个问题不适合论坛,请让我知道,我会删除这个 我必须写一个逻辑来计算博客奖网站的博客分数。一个博客可能会被提名为多个奖项类别,并由评审团进行同行评审或评分,评分为-1到5分(-1表示他们完全不喜欢的博客)。现在,一个博客可以由一个或多个陪审员评分。计算博客最终得分时的一个标准是,如果一个博客被更多人正面评价,它应该得到更多的权重(反之亦然)。类似地,一个博客即使被一名陪审员评为-1,其得分也会受到影响(-1在这里有点否决权)。最后,我还想根据博客的Tec

这个问题与逻辑比任何编程语言都更相关。如果这个问题不适合论坛,请让我知道,我会删除这个

我必须写一个逻辑来计算博客奖网站的博客分数。一个博客可能会被提名为多个奖项类别,并由评审团进行同行评审或评分,评分为-1到5分(-1表示他们完全不喜欢的博客)。现在,一个博客可以由一个或多个陪审员评分。计算博客最终得分时的一个标准是,如果一个博客被更多人正面评价,它应该得到更多的权重(反之亦然)。类似地,一个博客即使被一名陪审员评为-1,其得分也会受到影响(-1在这里有点否决权)。最后,我还想根据博客的Technorati排名获得一个额外的分数(因此最终的分数是基于陪审员评级+Technorati排名的组合)

一个博客被6名陪审员评为A类。2分为3分,3分为2分,1分为4分。(我曾经将分数计算为(2*3+3*2+1*4)/6=16/6=2.67以获得加权平均值,但我对此并不满意,主要是因为当陪审员评分为-1时,它不起作用。此外,我还需要添加Technorati排名标准)


你能帮我决定计算最终分数的最佳方法吗(保持评分方法与上面相同,因为现在无法更改)?

你可以在内部处理从0到6的分数。只需一个一个地换班,计算分数,然后换班。我猜-1对你的计算有一定的干扰作用。

如果你想更强烈地衡量-1评级的影响,请使用相同的平均分数计算,但只要你看到-1,就用-10代替。如果您不希望负面评价的权重如此之大,可以选择-10以外的值。

基于投票计算分数将非常容易。增加technorati排名将是一个棘手的部分

我制作了一个快速脚本,根据这个算法计算一些分数

score = ( vote_sum - ( vetos * veto_weight ) ) / number_of_votes
您可以更改url参数以获得不同的值


有很多平局,所以也许你可以使用technorati博客排名作为平局打破者

你可以考虑使用威尔逊评分区间的下限来进行评分

有关更多详细信息,请参阅。尽管在那里,它被用于更简单的伯努利案例

要点是,如果你有很多评分,你对自己的得分有更高的信心。然后,您可以根据本地和Technorati上的投票人数对分数进行加权,从而将本地评级和Technorati评级中的分数结合起来


至于想让一次1-1的投票产生更大的影响,只需将其重新映射为一个与你期望的影响成比例的较大负值,然后再将其输入你的评分公式。

这个问题似乎适合这样做。你在问“最佳”算法来分配分数。有趣的问题是,+1为什么不在评分前使用
if(分数包括-1){remove from competition}
?这或多或少就是否决权的意思,对吧?谢谢格雷格。你对Technorati的排名有什么建议?你对加权平均数的计算方法满意吗?你还没有指定Technorati排名是多少。它也是一个介于-1和5之间的值吗?还是别的什么?你想用陪审员的排名来衡量它有多重要?这些是你需要回答的问题,以确定如何使用排名。Greg,Technorati排名是Technorati.com根据各种因素(如流量、链接回等)对网站的评分。排名值越低,网站越好。因此,Technorati排名3000的网站比排名40000的网站更好。Technorati的价值范围是什么?这还取决于你认为Technorati评级的重要性。我的意思是,你可以划分每个分数的重要性,让陪审员占分数的某个百分比,比如说80%,然后Technorati的评级可以是其他20%。但我真的不知道你觉得这有多重要。此外,如果你想让更多的好分数更重要,只需根据平均分数将分数上移即可。感谢Galen使用脚本演示。