2017-03-04 122 views
-2

我有来自不同传感器的SCADA数据,这些数据是在数值变化时记录的。
我已经尝试了一些,但在R中是新的,我无法调试错误。
如何改变这种价值变化的数据为每分钟的平均数据.... 这里是样本数据:获取R中时间戳数据的平均值

Date  Time Value 
01-02-2017 06:47:04 9 
01-02-2017 06:47:16 10 
01-02-2017 06:47:40 11 
01-02-2017 06:48:04 9 
01-02-2017 06:48:16 12 
01-02-2017 06:48:40 10 
01-02-2017 06:48:52 11 
01-02-2017 06:49:04 13 
01-02-2017 06:49:16 11 
01-02-2017 06:49:28 14 
01-02-2017 06:50:04 15 

我希望每值 分钟平均来计算的话应该考虑像值:

Time Value 
06:48:00 11 
06:48:01 11 
06:48:02 11 
06:48:03 11 
06:48:04 9 
06:48:05 9 
06:48:06 9 
06:48:07 9 
06:48:08 9 
06:48:09 9 
06:48:10 9 
06:48:11 9 
06:48:12 9 
06:48:13 9 
06:48:14 9 
06:48:15 9 
06:48:16 12 
06:48:17 12 
06:48:18 12 
06:48:19 12 
06:48:20 12 
06:48:21 12 
06:48:22 12 
06:48:23 12 
06:48:24 12 
06:48:25 12 
06:48:26 12 
06:48:27 12 
06:48:28 12 
06:48:29 12 
06:48:30 12 
06:48:31 12 
06:48:32 12 
06:48:33 12 
06:48:34 12 
06:48:35 12 
06:48:36 12 
06:48:37 12 
06:48:38 12 
06:48:39 12 
06:48:40 10 
06:48:41 10 
06:48:42 10 
06:48:43 10 
06:48:44 10 
06:48:45 10 
06:48:46 10 
06:48:47 10 
06:48:48 10 
06:48:49 10 
06:48:50 10 
06:48:51 10 
06:48:52 11 
06:48:53 11 
06:48:54 11 
06:48:55 11 
06:48:56 11 
06:48:57 11 
06:48:58 11 
06:48:59 11 

第48分钟的平均值为10.8。

回答

0

假设您的时间列是一个字符向量,您可以使用dplyrlubridate包来完成该任务。这里的df是你的数据帧,有列日期,时间和值:

library(dplyr) 
library(lubridate) 

df %>% 
    mutate(Time = hms(Time)) %>% 
    group_by(h = hour(Time), m = minute(Time)) %>% 
    summarise(Mean = mean(Value))