【发布时间】:2019-07-08 20:58:56
【问题描述】:
我正在处理 NHL 球员的表现数据,并且有一个包含以下变量(以及其他变量)的数据框。 war_82 衡量一个完整的 82 场比赛赛季的球员价值。数据跨越 11 个季节,从 2007-2008 年到 2017-2018 年。
first_name last_name season war_82
<chr> <chr> <chr> <dbl>
1 5EBASTIAN AHO 2017-2018 -0.560
2 AARON DELL 2016-2017 7.50
3 AARON DELL 2017-2018 1.61
4 AARON DOWNEY 2007-2008 -0.560
5 AARON EKBLAD 2014-2015 0.350
6 AARON EKBLAD 2015-2016 -0.350
7 AARON EKBLAD 2016-2017 -1.39
8 AARON EKBLAD 2017-2018 -0.320
9 AARON JOHNSON 2007-2008 -1.42
10 AARON JOHNSON 2008-2009 -1.19
我想减少 war_82 指标的季节变化,并创建一个新变量,即加权 war_82。理想情况下,我会查看 3 个季节的数据,并让第 n 季(当前季节)的权重最高,而第 n-1 季和 n-2 季(前两个季节)随着新近度的降低而减少权重。为了论证的缘故,假设权重为 0.5、0.3 和 0.2。
澄清更新:我希望计算加权移动平均线。例如; Sidney Crosby 的 20172018_weighted_war 将由 2017-2018、2016-2017 和 2015-2016 年确定。他的 20162017_weighted_war 将由 2016-2017、2015-2016 和 2014-2015 确定。以此类推。
我有两个主要问题:
1) 你会为此推荐什么方法?我查看了 weighted.mean(),但有些玩家比其他玩家玩得更多,所以我不确定如何指定“w”(权重)参数。例如,Sidney Crosby 在我的数据集中打了所有 11 个赛季,但许多球员只打了 1 或 2 个赛季。我真的不想丢掉出场时间少于 3 个赛季的球员的数据。
2) 您如何确定每个季节的权重?最简单的方法是我上面提到的方法,它的灵感来自于 Marcel 方法 (https://www.beyondtheboxscore.com/2016/2/22/11079186/projections-marcel-pecota-zips-steamer-explained-guide-math-is-fun)。我想您还可以确定第 n-1 季和第 n-2 季对第 n 季的预测效果如何,并将其用作您的权重?
您将如何解决这个问题?非常感谢任何和所有指导!
【问题讨论】:
标签: r moving-average weighted-average