我有一个包含如下体育数据的 R 数据框:
HomeTeam AwayTeam HomeWin Draw AwayWin
1 Barcelona Madrid 2.30 3.28 3.27
2 Madrid Liverpool 8.79 5.12 1.36
3 Liverpool Barcelona 3.41 3.34 2.21
4 Madrid Barcelona 1.38 5.08 7.92
5 Liverpool Madrid 1.53 4.07 6.83
6 Barcelona Liverpool 3.35 3.62 2.12
因此,主队和客队有单独的列,然后主队、平局和客队获胜赔率有 3 列。
我想创建一个新的数据框来显示每支球队的平均获胜赔率。因此,我想获取每支球队的获胜赔率(无论是主场还是客场)并计算平均值。例如,就巴塞罗那而言,平均获胜赔率为 (2.30 + 2.21 + 7.92 + 3.35) / 4 = 3.95。我想制作的表格如下所示:
Team AverageWinOdds
1 Barcelona 3.95
2 Madrid 5.07
3 Liverpool 2.11
我怎样才能做到这一点?
1)使用最后注释中可重现显示的数据
reframe
创建一个两列数据框,然后summarize
使用它。2)另一种方法是
pivot_longer
创建一个长格式数据框,然后summarize
像以前一样。笔记
易于重现的输入数据形式:
在基础上,我们可以做
(1)
或(2)
(使用@ThomasIsCoding 的
unlist()
方法)或(3)
reshape
使用@thelatemail 建议的有点麻烦的-function给予
(不同方法的顺序不同)。
你可以尝试
给出
数据