【发布时间】:2018-03-03 15:45:40
【问题描述】:
我有下表:
Name Date Score
John 11-01-02 40
John 11-01-03 47
John 11-01-04 41
John 11-01-05 35
John 11-01-06 52
John 11-01-07 47
John 11-01-08 45
John 11-01-09 43
John 11-01-10 40
Adam 11-01-02 41
Adam 11-01-03 41
Adam 11-01-04 49
Adam 11-01-05 40
Adam 11-01-06 40
我只想跟踪以下事件:对于每个学生,跟踪学生何时以及多少次 1) 分数增加 5 或更多,然后分数减少 5 或更多或 2 ) 分数降低 5 或更多,然后分数增加 5 或更多。
我制作了下表来帮助完成上述任务:每个学生的分数差异表。
Name Date Difference
John 11-01-03 7
John 11-01-04 -6
John 11-01-05 -6
John 11-01-06 17
John 11-01-07 -5
John 11-01-08 -2
John 11-01-09 -2
John 11-01-10 -3
Adam 11-01-04 8
Adam 11-01-05 -9
Adam 11-01-06 0
例如,2003 年 1 月 11 日,约翰的得分从 02 年 1 月 1 日的 40 上升到 47,因此 47-40=7 的差异。
我想要下表作为输出:
一个记录事件名称、日期的工具
Name Dates for Events
John 11-01-03
John 11-01-05
John 11-01-06
Adam 11-01-04
2003 年 1 月 11 日,John 经历了 7 分的变化,随后是 -6,因此 John 经历了我所描述的事件。出于同样的原因,也包括了其他日期。
在 R 中有一种简单的方法吗?任何帮助将不胜感激。
【问题讨论】:
-
John 11-01-05应该在,John 11-01-07不应该(两个连续减少) -
@denis 是的。我编辑了。谢谢
-
和
John 11-01-03应该在