我有一个数据框,其中有15个日期,按顺序和顺序是月/日期/年日期,如何查找缺少的日期?例如,如果它从2/3/2018跳到2/5/2018,则结果将是一个值为2/4/2018的数据框,而它发现缺少的其他值?原始数据框只有一列,称为日期。
答案 0 :(得分:2)
您也可以尝试这样做,以获取完整的日期序列:
data <-data.frame(Dates = as.Date(c("2018/10/10","2018/10/13","2018/10/31")))
data_ <- data.frame(Dates_all =
seq(min(data$Dates), max(data$Dates), by="days"))
data_
Dates_all
1 2018-10-10
2 2018-10-11
3 2018-10-12
4 2018-10-13
5 2018-10-14
6 2018-10-15
7 2018-10-16
8 2018-10-17
9 2018-10-18
10 2018-10-19
11 2018-10-20
12 2018-10-21
13 2018-10-22
14 2018-10-23
15 2018-10-24
16 2018-10-25
17 2018-10-26
18 2018-10-27
19 2018-10-28
20 2018-10-29
21 2018-10-30
22 2018-10-31
要查找丢失的日期作为矢量:
data_[!data_$Dates_all %in% data$Dates,]
[1] "2018-10-11" "2018-10-12" "2018-10-14" "2018-10-15" "2018-10-16" "2018-10-17"
[7] "2018-10-18" "2018-10-19" "2018-10-20" "2018-10-21" "2018-10-22" "2018-10-23"
[13] "2018-10-24" "2018-10-25" "2018-10-26" "2018-10-27" "2018-10-28" "2018-10-29"
[19] "2018-10-30"