聚集在时间间隔
问题描述:
我想分析R中一些measurment数据聚集在时间间隔
> head(data)
Time Val
1 2011-12-01 10:11:21 20
2 2011-12-01 10:11:24 0
3 2011-12-01 10:11:24 30
4 2011-12-01 10:11:25 0
5 2011-12-01 10:11:29 80
6 2011-12-01 10:13:31 0
我有动物园,并与as.Date两个实验,但他们没有直接给出答案以下几个问题:
- 如何在一天中的24小时内每分钟绘制直方图?
- 我该如何计算并绘制每一天的平均值(不是一天中的某一天,而是一天中的某一天)?
答
plyr软件包非常适合这项任务。这里有几个指南:http://plyr.had.co.nz 您应该为每个要分别分析的时段分配一个因子变量的值 - 我不知道快捷方式,因此您可以尝试将substr()应用于您的时间变量。然后用plyr对每个组应用不同的函数(如mean())。对于绘图,您可以使用来自同一作者或格子的ggplot包。
答
获取关于?aggregate
和?cut.Date
的帮助。
喜欢的东西:
aggregate (z, format (index (z), "%M"), sum)
和
aggregate (z, cut (as.Date (index (z)), breaks="day"), mean)
我是新来的R(今天了解到它作为一个比较钪。),我感觉仿佛plyr是太多我的需要? – 2012-07-16 12:47:37
我觉得它非常直观(比ggplot更多),Hadley的指南中的例子非常具有说明性。如果你有20分钟的时间专注于解决问题,那么花点时间阅读文件,你将会为将来出现的任何问题做好准备。 – Alex 2012-07-17 22:34:17