【发布时间】:2023-03-18 23:17:01
【问题描述】:
我有一个矩阵,看起来有点像这样:
Date Time Data
15000 04/09/2014 05:45:00 0.908
15001 04/09/2014 06:00:00 0.888
15002 04/09/2014 06:15:00 0.976
15003 04/09/2014 06:30:00 1.632
15004 04/09/2014 06:45:00 1.648
15005 04/09/2014 07:00:00 1.164
15006 04/09/2014 07:15:00 0.568
15007 04/09/2014 07:30:00 1.020
15008 04/09/2014 07:45:00 1.052
15009 04/09/2014 08:00:00 0.920
15010 04/09/2014 08:15:00 0.656
15011 04/09/2014 08:30:00 1.172
15012 04/09/2014 08:45:00 1.000
15013 04/09/2014 09:00:00 1.420
15014 04/09/2014 09:15:00 0.936
15015 04/09/2014 09:30:00 0.996
15016 04/09/2014 09:45:00 1.100
15017 04/09/2014 10:00:00 0.492
它包含一年的数据,每天有 96 行(从 00:00 到 23:45 间隔 15 分钟)。我的问题是,我想根据我指定的时间范围对每天的 data 列进行平均。例如,如果我想平均每天 06:00 - 08:00 的时间,在上面的代码中,我应该得到 1.0964 日期 04/09/2014 的答案。
我不知道如何使用日期和时间列作为过滤器来执行此操作,想知道是否有人可以提供帮助?
为了让事情变得更复杂,我还想计算每天 45 分钟的滚动平均值,在不同的时间段内,比如 04:00 - 09:00。同样,因为这是针对每一天的,所以最好将结果放在一个矩阵中,其中每一行都是特定日期,然后列将代表滚动平均值,例如 04:00 - 04:45、04:15 - 05:00...
有什么想法吗?!
【问题讨论】:
-
使您附加的数据易于复制,即使它们成为
data.frame或类似的东西
标签: r datetime average subset moving-average