【问题标题】:Weighted Average with a negative number带负数的加权平均值
【发布时间】:2010-09-21 21:53:37
【问题描述】:

假设您需要以图形表示棒球队的表现(我的软件问题与运动无关,但是...)。

假设您选择 25% 的计量表与第一次击球时击球的击球手百分比有关。 接下来的 25% 与球队中投出 n 次好球的投手百分比有关。 最后的 50% 与球队在比赛中得分的击球手百分比有关。

显而易见的计算是 (.25 * percent1) + (.25 * percent2) + (.5 * percent3)。这将等于一些最终计算

假设您想在算法中添加一些“负面”部分。例如,在比赛中犯错的守场员百分比。作为算法的一部分,这将如何工作?我认为你不能说这个百分比是-50%(负数),然后在某处再加上 50% 加起来就是 100%。这是行不通的,因为您最终可能会得到 > 100 的最终计算结果。

更新:(举个实际例子)

  • 25% 时的百分比 1
  • 25% 时的百分比 2
  • 百分比 3(这是负数)为 -50%
  • 百分比 4 在 ??? 100%

如果我们合计百分比,那么我们是 100%,但计算出来的结果可能 > 100。

【问题讨论】:

  • 为什么不根据没有失误的守场员百分比来重新计算?
  • 是的,这行得通,但在“真实”业务需求中,他们确实希望拥有这些“负面”场景。如果这是唯一的解决方案,那么我将不得不与他们讨论,但我需要先看看我是否遗漏了什么。

标签: algorithm weighted-average


【解决方案1】:

只要加进去。如果守场员是完美的,他们的错误率为0,0*(-.5) = 0,你的计算仍然有可能的最大值为1。你不需要任何校正因子。

【讨论】:

  • 感谢回复,没看到。您可以使用我更新的示例(各自权重的百分比 1-4)作为示例吗?对我来说,使用加起来为 100% 但包括负百分比的权重仍然可以得到 > 1(或 100)。
  • 我会将您更新示例中的百分比 4 保留为 50%。那么,如果每个玩家都是完美的,那么结果就是 100%。如果除了守场员之外的每个人都是完美的,而且守场员最糟糕,结果是 50%,反映出获胜的机会减少了。
  • 我喜欢这样!我只需要有一个规则,正数加起来必须达到 100%,负数可以是 0 到 100% 之间的任何值
【解决方案2】:

您可以衡量一个团队与任意限制或可能是所有团队中最差的限制相比的表现。

因此,如果您希望错误占 50%,任意限制为 100

.5 * (100 - NumberOfErrors)

或者你可以用联盟中最差的球队来衡量一支球队

.5 * 100 * (MostErrorsInTheLeague - NumberOfErrors) / MostErrorsInTheLeague

这样一来,最差的球队将获得该因素的零分,而零失误的球队将获得满分的 50 分。

【讨论】:

  • 我认为您的第二条评论可能是我可以做的。问题是我不知道什么是“负面”。在我的例子中,很明显在比赛中出现失误是很糟糕的。在我的世界中,有几种这样的算法,真正由用户定义这是“坏的”并且应该对整体计算产生负面影响。如果用户可以将其定义为“负数”,那么我可以使用您的第二个计算。让我再考虑一下,但谢谢 - 我认为这是一种可能性。
【解决方案3】:

Mean Squared Error
Root Mean Square Deviation

这两个术语中的一个应该可以很好地比较两种算法,其中误差可以是负数也可以是正数。

【讨论】:

    猜你喜欢
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    • 1970-01-01
    • 2017-08-06
    • 2010-09-21
    • 1970-01-01
    相关资源
    最近更新 更多