我有一个大的现场测量数据集(一个csv文件)。
由于电源故障,数据集有几个丢失的数据点。
发生电源故障时,它没有生成时间戳以及当时丢失的记录。
如何填补缺失的时间戳并填写缺失记录的空白(标签)。
以下是cvs数据集:
7/7/15 10:01 45 66 80
7/7/15 10:02 35 18 12
7/7/15 10:04 77 60 35
7/7/15 10:05 77 37 18
7/7/15 10:06 81 57 86
7/7/15 10:07 43 7 80
7/7/15 10:13 69 59 50
7/7/15 10:14 28 81 15
7/7/15 10:15 86 7 20
7/7/15 10:19 22 36 26
7/7/15 10:20 99 39 83
在这种情况下,缺少的时间戳和记录在
上7/7/15 10:03
7/7/15 10:08
7/7/15 10:09
7/7/15 10:10
7/7/15 10:11
7/7/15 10:12
7/7/15 10:16
7/7/15 10:17
7/7/15 10:18
请指导我如何用时间戳填补这些空白,缺少的记录将由"空白"填写。 R或Matlab中的(或制表空间)。
非常感谢。
答案 0 :(得分:0)
从预测包
中尝试 tscleant0 <- ISOdatetime(2015, 8, 6, 0, 10, 0)
t1 <- format(seq.POSIXt(from=t0, length.out=20, by="sec"), "%M:%S")
t2 <- t1[c(1,2, 4:7, 10, 12, 14:15, 20)]
x <- data.frame(date=rep(as.Date("2015-07-07"), 20),
t=format(seq.POSIXt(from=t0, length.out=20, by="sec"), "%M:%S"))
y <- data.frame(date=rep(as.Date("2015-07-07"), 11),
t = t2,
num1 = runif(11))
(z <- merge(x, y, all.x=TRUE))
date t num1
1 2015-07-07 10:00 0.678124372
2 2015-07-07 10:01 0.844224331
3 2015-07-07 10:02 NA
4 2015-07-07 10:03 0.491658140
5 2015-07-07 10:04 0.766373149
6 2015-07-07 10:05 0.006970135
7 2015-07-07 10:06 0.781392461
8 2015-07-07 10:07 NA
9 2015-07-07 10:08 NA
10 2015-07-07 10:09 0.959365082
11 2015-07-07 10:10 NA
12 2015-07-07 10:11 0.652523464
13 2015-07-07 10:12 NA
14 2015-07-07 10:13 0.616461093
15 2015-07-07 10:14 0.215957890
16 2015-07-07 10:15 NA
17 2015-07-07 10:16 NA
18 2015-07-07 10:17 NA
19 2015-07-07 10:18 NA
20 2015-07-07 10:19 0.369941733
require(forecast)
z$num1 <- tsclean(z$num1)
z
date t num1
1 2015-07-07 10:00 0.678124372
2 2015-07-07 10:01 0.844224331
3 2015-07-07 10:02 0.667941235
4 2015-07-07 10:03 0.491658140
5 2015-07-07 10:04 0.766373149
6 2015-07-07 10:05 0.006970135
7 2015-07-07 10:06 0.781392461
8 2015-07-07 10:07 0.840716668
9 2015-07-07 10:08 0.900040875
10 2015-07-07 10:09 0.959365082
11 2015-07-07 10:10 0.805944273
12 2015-07-07 10:11 0.652523464
13 2015-07-07 10:12 0.634492278
14 2015-07-07 10:13 0.616461093
15 2015-07-07 10:14 0.215957890
16 2015-07-07 10:15 0.246754658
17 2015-07-07 10:16 0.277551427
18 2015-07-07 10:17 0.308348195
19 2015-07-07 10:18 0.339144964
20 2015-07-07 10:19 0.369941733