X
Team Date Score
A 1-1-2012 80
A 1-2-2012 90
A 1-3-2012 50
A 1-4-2012 40
B 1-1-2012 100
B 1-2-2012 60
B 1-3-2012 30
B 1-4-2012 70
etc
我需要并且可以将此数据框转换为每个团队的一行宽数据框,并将所有观察结果和日期作为标题:
xx
Team 1-1-2012 1-2-2012 1-3-2012 1-4-2012
A 80 90 50 40
B 100 60 30 70
我需要计算每一行的平均值和标准差,我可以这样做:
xx
Team 1-1-2012 1-2-2012 1-3-2012 1-4-2012 mean sd
A 80 90 50 40 75 20
B 100 60 30 70 55 10
考虑到我在数据框 xx 中有数千行。我想对每个单元格进行计算,如下所示:
如果 abs(xx-Mean) > 3*SD,创建一个计数器列名并增加值。这个想法是将每个观察结果与平均值和 sd 进行比较,如果给定团队的每个观察结果都匹配 - abs(xx-Mean) > 3*SD,则增加计数器。检查每个单元格后,我想查看每个团队的每个计数器,并获得计数器值最高的前十名高团队。基本上我正在尝试检测最多的异常值。一旦获得前 10 名团队名称,我想在数据框 x 上绘制他们的时间序列数据。
我希望我不会让这变得比它应该的更复杂。不确定,R 已经具有对每个单元格进行计算的功能。任何想法如何实现这一点表示赞赏?